openapi: 3.2.0 info: title: Harness Settings API version: '1.0' description: The Harness Software Delivery Platform uses OpenAPI Specification v3.0. contact: name: API Support email: contact@harness.io url: https://harness.io/ x-logo: url: https://mma.prnewswire.com/media/779232/Harnes_logo_horizontal.jpg?p=facebook altText: Harness termsOfService: https://harness.io/terms-of-use/ servers: - url: https://app.harness.io description: Harness host URL - url: https://{vanity} description: Vanity URL variables: vanity: default: app.harness.io security: - x-api-key: [] tags: - name: Settings description: Settings service handles all API endpoints related to configuration settings paths: /code/api/v1/settings/general: get: operationId: findSpaceGeneralSettings 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 result should inherit entities from parent spaces. in: query name: inherited required: false schema: default: false type: boolean responses: '200': content: application/json: schema: $ref: '#/components/schemas/SettingsGeneralSettingsSpace' 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: Find general settings of the account, organization, or project tags: - Settings patch: operationId: updateSpaceGeneralSettings 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/SettingsGeneralSettingsSpace' responses: '200': content: application/json: schema: $ref: '#/components/schemas/SettingsGeneralSettingsSpace' 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 of the account, organization, or project tags: - Settings /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: Eius nesciunt. example: Ut rerum aut aut eveniet occaecati nostrum. - name: project in: path required: true schema: type: string example: Voluptatem qui itaque quia. example: Magnam autem sit culpa fugiat. - name: Harness-Account in: header allowEmptyValue: true required: true schema: type: string example: Aut quia vitae est quo temporibus. example: At sit facilis qui ut ipsa. 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: vy minLength: 1 maxLength: 128 example: 4p2 - name: project in: path description: Project is the project identifier. required: true schema: type: string description: Project is the project identifier. example: t7 minLength: 1 maxLength: 128 example: t - 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: 89e minLength: 1 maxLength: 128 example: zz5 responses: '200': description: OK response. content: application/json: schema: $ref: '#/components/schemas/DefaultPipelineCollection' example: - account: Sint vitae molestiae voluptatem ad. operation: plan org: Ducimus et quam. pipeline: testpipeline project: Maiores fugit. provisioner: opentofu updated: 1636669297674 workspace: plan - account: Sint vitae molestiae voluptatem ad. operation: plan org: Ducimus et quam. pipeline: testpipeline project: Maiores fugit. provisioner: opentofu updated: 1636669297674 workspace: plan - account: Sint vitae molestiae voluptatem ad. operation: plan org: Ducimus et quam. pipeline: testpipeline project: Maiores fugit. 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: Aliquam blanditiis ut. example: Fugit deleniti consequatur facere non. - name: project in: path required: true schema: type: string example: Laborum exercitationem aut atque dolores in ut. example: Quidem asperiores veniam. - name: Harness-Account in: header allowEmptyValue: true required: true schema: type: string example: Voluptatibus voluptatem ipsa laboriosam. example: Ut optio corrupti quae. 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: k minLength: 1 maxLength: 128 example: les - name: project in: path description: Project is the project identifier. required: true schema: type: string description: Project is the project identifier. example: 13h 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: v7 minLength: 1 maxLength: 128 example: e 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}/settings/drift-config: delete: tags: - Settings summary: Disable drift automation for all workspaces in a project description: Enqueues a background job that removes drift triggers for every workspace in the project. operationId: settings#disable-project-drift parameters: - name: provisioner in: query description: Provisioner type to disable drift for allowEmptyValue: true required: true schema: type: string description: Provisioner type to disable drift for example: terragrunt enum: - terraform - opentofu - terragrunt - awscdk example: terraform - name: org in: path description: Org is the organisation identifier. required: true schema: type: string description: Org is the organisation identifier. example: 8qf 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: r0s minLength: 1 maxLength: 128 example: '9' - 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: v minLength: 1 maxLength: 128 example: sz responses: '202': description: Accepted response. content: application/json: schema: $ref: '#/components/schemas/DisableProjectDriftResponse' example: job_id: 1784745457245046800 status: Sed ut quis accusantium aspernatur rerum dicta. '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: Get project-level drift automation status for a provisioner description: Returns whether drift automation is currently enabled at the project level for the given provisioner, along with its pipeline_id and schedule. operationId: settings#get-project-drift parameters: - name: provisioner in: query description: Provisioner type to query drift status for allowEmptyValue: true required: true schema: type: string description: Provisioner type to query drift status for example: opentofu enum: - terraform - opentofu - terragrunt - awscdk example: terraform - 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: w6 - name: project in: path description: Project is the project identifier. required: true schema: type: string description: Project is the project identifier. example: 6h minLength: 1 maxLength: 128 example: 3w - 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: rva minLength: 1 maxLength: 128 example: s responses: '200': description: OK response. content: application/json: schema: $ref: '#/components/schemas/GetProjectDriftResponse' example: enabled: false pipeline_id: Nulla dolore corporis. provisioner: Iste sit quibusdam doloremque ipsa qui. run_every: 119490300577806300 run_every_unit: hours '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: Enable drift automation for all workspaces in a project description: Enqueues a background job that creates drift triggers for every workspace in the project. operationId: settings#enable-project-drift parameters: - name: org in: path description: Org is the organisation identifier. required: true schema: type: string description: Org is the organisation identifier. example: qn minLength: 1 maxLength: 128 example: bq - name: project in: path description: Project is the project identifier. required: true schema: type: string description: Project is the project identifier. example: op minLength: 1 maxLength: 128 example: 6y - 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: a minLength: 1 maxLength: 128 example: wmi requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/EnableProjectDriftRequest' example: pipeline_id: Esse corrupti beatae exercitationem recusandae aspernatur. provisioner: terragrunt run_every: 390544456384722700 run_every_unit: minutes responses: '202': description: Accepted response. content: application/json: schema: $ref: '#/components/schemas/EnableProjectDriftResponse' example: job_id: 3619947106265864000 status: Molestias modi nobis. '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/ephemeral-config: delete: tags: - Settings summary: Disable ephemeral TTL for all workspaces in a project description: Enqueues a background job that removes ephemeral schedules for every workspace in the project. operationId: settings#disable-ephemeral-workspaces-in-project parameters: - name: provisioner in: query description: Provisioner type to disable ephemeral for allowEmptyValue: true required: true schema: type: string description: Provisioner type to disable ephemeral for example: awscdk enum: - terraform - opentofu - terragrunt - awscdk example: opentofu - name: org in: path description: Org is the organisation identifier. required: true schema: type: string description: Org is the organisation identifier. example: wrf minLength: 1 maxLength: 128 example: aj - name: project in: path description: Project is the project identifier. required: true schema: type: string description: Project is the project identifier. example: i minLength: 1 maxLength: 128 example: a3l - 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: wt minLength: 1 maxLength: 128 example: x6s responses: '202': description: Accepted response. content: application/json: schema: $ref: '#/components/schemas/DisableEphemeralWorkspacesInProjectResponse' example: job_id: 7889353967923743000 status: Ipsa nesciunt dolor 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' get: tags: - Settings summary: Get project-level ephemeral configuration for a provisioner description: Returns whether ephemeral automation is currently enabled at the project level for the given provisioner, along with its raw schedule fields (ttl, destroy_on_date, delete_*) so the UI can re-render previously saved values. operationId: settings#get-ephemeral-workspaces-in-project parameters: - name: provisioner in: query description: Provisioner type to query ephemeral status for allowEmptyValue: true required: true schema: type: string description: Provisioner type to query ephemeral status for example: terragrunt enum: - terraform - opentofu - terragrunt - awscdk example: opentofu - name: org in: path description: Org is the organisation identifier. required: true schema: type: string description: Org is the organisation identifier. example: y6y 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: ay 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: mxw minLength: 1 maxLength: 128 example: 56y responses: '200': description: OK response. content: application/json: schema: $ref: '#/components/schemas/GetEphemeralWorkspacesInProjectResponse' example: delete_delay_unit: minutes delete_delay_value: 4788931909215015000 delete_on_date: Qui et quia. delete_workspace: false destroy_on_date: Labore reiciendis harum minima laboriosam velit. enabled: true pipeline_id: Harum consequuntur. provisioner: Natus ut cupiditate aut quia facere voluptas. ttl_unit: seconds ttl_value: 1163343200896130600 '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: Enable ephemeral TTL for all workspaces in a project description: Enqueues a background job that configures ephemeral destroy/delete schedules for every workspace in the project. operationId: settings#enable-ephemeral-workspaces-in-project 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: nwe - 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: seh - 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: 14y minLength: 1 maxLength: 128 example: s requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/EnableEphemeralWorkspacesInProjectRequest' example: delete_delay_unit: hours delete_delay_value: 2666456894812327400 delete_on_date: Iste dolor sint modi. delete_workspace: false destroy_delay_unit: days destroy_delay_value: 8247386288086625000 destroy_on_date: Quia voluptas maxime aut nesciunt ea aliquam. pipeline_id: Labore atque necessitatibus. provisioner: awscdk responses: '202': description: Accepted response. content: application/json: schema: $ref: '#/components/schemas/EnableEphemeralWorkspacesInProjectResponse' example: job_id: 505502153795094100 status: Aliquam quia rerum enim voluptatum ea. '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' components: schemas: EnableProjectDriftRequest: type: object properties: pipeline_id: type: string description: Pipeline to run for drift detection example: Expedita ullam laudantium ut. provisioner: type: string description: Provisioner type to enable drift for example: terraform enum: - terraform - opentofu - terragrunt - awscdk run_every: type: integer description: Run drift detection every N hours or N days (see run_every_unit) example: 5255111513399221000 format: int64 run_every_unit: type: string description: hours or days example: hours enum: - seconds - minutes - hours - days example: pipeline_id: Cupiditate rem veniam eos. provisioner: terraform run_every: 259540455629725000 run_every_unit: seconds required: - pipeline_id - provisioner - run_every - run_every_unit DisableProjectDriftResponse: type: object properties: job_id: type: integer description: Background job identifier example: 1158041719824226000 format: int64 status: type: string description: Outcome message example: Dolorem non id et et animi unde. example: job_id: 5594223234497783000 status: Tenetur autem quos delectus delectus autem quasi. required: - status - job_id UsererrorError: properties: message: type: string values: additionalProperties: {} type: object type: object DisableEphemeralWorkspacesInProjectResponse: type: object properties: job_id: type: integer description: Background job identifier example: 8597944157028824000 format: int64 status: type: string description: Outcome message example: Ut possimus beatae laudantium aperiam eveniet vel. example: job_id: 2141634154889989000 status: Repellat delectus quod maxime rerum quia. required: - status - job_id DeleteDefaultPipelineRequest: type: object properties: operation: type: string description: The default pipeline is associated with this operation example: plan enum: - plan - apply - destroy - drift - synth - diff - deploy - remediation provisioner: type: string description: The default pipeline is associated with this provisioner example: opentofu enum: - terraform - opentofu - terragrunt - awscdk 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 CheckPushDataResponse: type: object properties: disabled: type: boolean description: Indicates if the data is allowed to be pushed example: true example: disabled: false required: - disabled HarnessIacmDefaultpipeline: type: object properties: account: type: string example: Ut fugit magnam facere id ut. operation: type: string description: The default pipeline is associated with this operation example: plan enum: - plan - apply - destroy - drift - synth - diff - deploy - remediation org: type: string example: Saepe qui sit. pipeline: type: string description: The default pipeline associated with the provisioner operation example: testpipeline project: type: string example: Non adipisci minima tempora quod rerum. provisioner: type: string description: The default pipeline is associated with this provisioner example: opentofu enum: - terraform - opentofu - terragrunt - awscdk 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: Distinctio nemo est fuga officiis animi nisi. operation: plan org: Consectetur voluptate rerum unde est. pipeline: testpipeline project: Et ullam. provisioner: opentofu updated: 1636669297674 workspace: plan required: - account - org - project - provisioner - operation - pipeline - updated DefaultPipelineCollection: type: array items: $ref: '#/components/schemas/HarnessIacmDefaultpipeline' example: - account: Sint vitae molestiae voluptatem ad. operation: plan org: Ducimus et quam. pipeline: testpipeline project: Maiores fugit. provisioner: opentofu updated: 1636669297674 workspace: plan - account: Sint vitae molestiae voluptatem ad. operation: plan org: Ducimus et quam. pipeline: testpipeline project: Maiores fugit. provisioner: opentofu updated: 1636669297674 workspace: plan EnableEphemeralWorkspacesInProjectResponse: type: object properties: job_id: type: integer description: Background job identifier example: 3389897349021707300 format: int64 status: type: string description: Outcome message example: Maiores sapiente fuga velit. example: job_id: 8756796858729133000 status: Ut libero libero placeat et labore. required: - status - job_id 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 EnableEphemeralWorkspacesInProjectRequest: type: object properties: delete_delay_unit: type: string description: Unit for delete delay example: days enum: - seconds - minutes - hours - days delete_delay_value: type: integer description: Delete workspace after N hours or days from now example: 538097907917452300 format: int64 delete_on_date: type: string description: Specific date to delete workspace (ISO 8601 format, e.g. 2026-09-02) example: Et at cupiditate. delete_workspace: type: boolean description: Whether to delete the workspace record after infrastructure is destroyed example: true destroy_delay_unit: type: string description: Unit for destroy delay example: hours enum: - seconds - minutes - hours - days destroy_delay_value: type: integer description: Destroy infrastructure after N hours or days from now example: 6352840824853054000 format: int64 destroy_on_date: type: string description: Specific date to destroy infrastructure (ISO 8601 format, e.g. 2026-08-24) example: Est tempora praesentium. pipeline_id: type: string description: Pipeline to run for destroying infrastructure example: Iure blanditiis quo provident sed. provisioner: type: string description: Provisioner type to enable ephemeral for example: awscdk enum: - terraform - opentofu - terragrunt - awscdk example: delete_delay_unit: seconds delete_delay_value: 7087914079702477000 delete_on_date: Necessitatibus non. delete_workspace: true destroy_delay_unit: minutes destroy_delay_value: 8710838569763979000 destroy_on_date: Minima eos quos et quibusdam aliquid adipisci. pipeline_id: Molestias suscipit sunt quasi distinctio. provisioner: opentofu required: - pipeline_id - provisioner EnableProjectDriftResponse: type: object properties: job_id: type: integer description: Background job identifier example: 4132808193509247000 format: int64 status: type: string description: Outcome message example: Beatae vitae perspiciatis minima voluptatem molestiae. example: job_id: 3357803606917823500 status: Nam sed qui quaerat corporis autem. required: - status - job_id GetEphemeralWorkspacesInProjectResponse: type: object properties: delete_delay_unit: type: string description: Configured delete delay unit (hours or days) example: seconds enum: - seconds - minutes - hours - days delete_delay_value: type: integer description: Configured delete delay value (when delete_workspace is true) example: 4722078712399212000 format: int64 delete_on_date: type: string description: Configured delete date (YYYY-MM-DD) when schedule uses a specific date example: Quis cumque error laudantium eum. delete_workspace: type: boolean description: Whether workspace records will be deleted after destroy example: true destroy_on_date: type: string description: Configured destroy date (YYYY-MM-DD) when schedule uses a specific date example: Sed quisquam aut. enabled: type: boolean description: Whether project-level ephemeral automation is currently enabled for this provisioner example: true pipeline_id: type: string description: Pipeline configured for destroying infrastructure example: Incidunt quia exercitationem. provisioner: type: string description: Provisioner this configuration applies to example: Iure cum dicta vero quod earum. ttl_unit: type: string description: Configured destroy delay unit (hours or days) example: days enum: - seconds - minutes - hours - days ttl_value: type: integer description: Configured destroy delay value (when schedule uses delay) example: 4572398587514407400 format: int64 example: delete_delay_unit: seconds delete_delay_value: 3343929823333614600 delete_on_date: Quis vel. delete_workspace: true destroy_on_date: Ea dolor ut recusandae error repellendus. enabled: false pipeline_id: Dolores id ad possimus. provisioner: Itaque id molestiae voluptas. ttl_unit: days ttl_value: 5086000406871777000 required: - enabled - provisioner UpsertDefaultPipelineRequest: type: object properties: operation: type: string description: The default pipeline is associated with this operation example: plan enum: - plan - apply - destroy - drift - synth - diff - deploy - remediation 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 - awscdk 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 SettingsGeneralSettingsSpace: properties: default_branch: description: default branch name type: - string - 'null' type: object GetProjectDriftResponse: type: object properties: enabled: type: boolean description: Whether project-level drift automation is currently enabled for this provisioner example: false pipeline_id: type: string description: Pipeline configured to run for drift detection example: Sunt aut nobis illum commodi. provisioner: type: string description: Provisioner this configuration applies to example: Optio et. run_every: type: integer description: Repeat interval; set when drift is enabled example: 7090462606487867000 format: int64 run_every_unit: type: string description: hours or days example: hours enum: - seconds - minutes - hours - days example: enabled: false pipeline_id: Quia dolorum eum voluptatem officiis. provisioner: Impedit libero quam. run_every: 7669625684478075000 run_every_unit: hours required: - enabled - provisioner securitySchemes: x-api-key: name: x-api-key type: apiKey in: header description: API key is a token provided while making the API calls. This is used to authenticate the client at the exposed endpoint. externalDocs: description: Find out more about Swagger url: http://swagger.io x-stoplight: id: oc91t4vrfnjyi x-tagGroups: - name: Organizations tags: - Organization - name: Projects tags: - Org Project - Project - name: Secrets tags: - Account Secret - Org Secret - Project Secret - Secrets - name: Connectors tags: - Account Connector - Org Connector - Project Connector - Connectors - GoogleSecretManagerConnector - name: Roles tags: - Account Roles - Organization Roles - Project Roles - Roles - name: Resource Groups tags: - Account Resource Groups - Organization Resource Groups - Project Resource Groups - Filter Resource Groups - Harness Resource Group - Zendesk - name: Role Assignments tags: - Account Role Assignments - Org Role Assignments - Project Role Assignments - Role Assignments - name: Platform tags: - Access Control List - Account Banner - Account Banner - Account Licensed Modules - Account License Type - Account Webhooks - AccountSetting - Accounts - Analyze Account Access Policy - Analyze Organization Access Policy - Analyze Project Access Policy - ApiKey - Audit - AuditFilters - Authentication Settings - Canny - Devops Essentials License Data By Account - EULA - Filter - Harness Resource Type - Invite - IP Allowlist - Nextgen Ldap - Notification Channels - Notification Rules - OIDC - Oidc-Access-Token - Oidc-ID-Token - Org Webhooks - Permissions - Project Webhooks - Secret Managers - Service Account - Setting - SMTP - Source Code Manager - Token - User - User Group - Variables - name: Delegate tags: - Agent mTLS Endpoint Management - Delegate Download Resource - Delegate Group Tags Resource - Delegate Setup Resource - Delegate Token Resource - name: Pipelines tags: - Pipelines - Input Sets - Approvals - Pipeline Execution - Pipeline Dashboard - Pipeline Input Set - Pipeline - Pipeline Execution Details - Pipeline Execute - Pipeline Refresh - Pipeline data retention - Triggers - TriggersEvents - Webhook Triggers - Webhook Event Handler - DryRunPipeline - name: Artifact Registry tags: - Registries - Artifacts - Docker Artifacts - Helm Artifacts - quarantine - Webhooks - Spaces - Replication - Registry V3 - Registries - Registry V3 - Packages - Registry V3 - Versions - Registry V3 - Files - Registry V3 - Metadata - Registry V3 - Firewall - Registry V3 - Transfer - name: Database DevOps tags: - Database Schema - Database Instance - Deployed State - Execution Config - Migration State - name: CD tags: - K8s Release Service Mapping - CustomDeployment - Environments - EnvironmentGroup - Infrastructures - Usage - File Store - Service Dashboard - ServiceOverrides - Rollback - tas - name: Deployment Freeze tags: - Freeze CRUD - Freeze Evaluation - Freeze Schema - name: Services tags: - Account Services - Org Services - Project Services - Services - name: Rancher Infrastructures tags: - Account Rancher Infrastructure - Org Rancher Infrastructure - Project Rancher Infrastructure - name: Templates tags: - Account Template - Org Template - Project Template - Templates - Global Templates - name: GitOps tags: - Agents - Application - Applications - Certificates - Clusters - Dashboard Aggregates - Dashboards - GnuPGP Keys - GPG Keys - Hosts - Project mappings - Projects - Reconciler - Repositories - Repository Certificates - Repository credentials - ValidateHost - name: GitX tags: - GitX Webhooks - Org Gitx Webhooks - Project Gitx Webhooks - name: CACM tags: - Anomalies Ignorelist Rule - Anomalies - BI Dashboards - Budgets - Budget Groups - Cost Categories - Cloud Accounts - K8S Connectors Metadata - Notification Settings v2 - Overview - Data Job Status - Recommendation cost settings - Unit Metric - Anomaly Comments - Cloud and AI cost anomaly details - Cloud and AI cost anomalies v2 - Cost Details - Currency Preferences - External Data Provider - AiEngine - CACM governance cost settings - Governance Enforcement Recommendation APIs - Governance Alert - Governance Overview - Governance Recommendation APIs - RuleEnforcement - Rule Executions - Rule - Rule Sets - Perspectives Folders - Perspective Reports - Perspectives - Cost Category Jira Project Mapping - Recommendations Details - Recommendations - Recommendation Jira - Recommendation Preferences - Recommendation Presets - Recommendation Servicenow - Recommendation Tags - Recommendation Ignore List - AutoStopping Rules - AutoStopping Rules V2 - AutoStopping Load Balancers - AutoStopping Fixed Schedules - AutoStopping Alerts - Commitment Orchestrator Events APIs - name: Feature Flags tags: - API Keys - Feature Flags - Targets - Target Groups - Environment Perspectives - Anomalies - Proxy - Tags - name: SRM tags: - Monitored Services - SLOs dashboard - NG SLOs - SLOs - Downtime - Srm Notification - name: Internal Developer Portal - IDP tags: - Entities - Teams - CatalogCustomProperties - Scores - DataSource - KubernetesDataPoints - AggregationRules - AppConfig - PluginInfo - LayoutProxy - Kinds - LayoutsV3 - LayoutsV4 - name: Environment Management - IDP tags: - Environment - Infrastructure - Instance - name: Custom Dashboards tags: - aida - dashboards - downloads - embed - folders - name: Policy Management tags: - dashboard - examples - policies - evaluate - evaluations - policysets - system - name: Code tags: - repository - status_checks - pullreq - upload - webhook - resource - rules - labels - name: IaCM tags: - usage - approvals - costs - executions - module-registry - workspaces - settings - tf-standard-backend - variables - name: STO tags: - Exemptions - Issues - Scans - Products - Test Targets - Target Variants - name: SEI tags: - Collection categories - Collections - Contributors - DORA - name: Git Sync (deprecated) tags: - Git Branches - Git Full Sync - Git Sync Settings - Git Sync - Git Sync Errors - name: Error Models tags: - Error Response - Governance Metadata - name: Supply Chain Security tags: - integration - PipelineInfraConfig - SBOM - Integration Step Config - Delete Step Config - Delete Repositories - Pipeline Store Config - Evidence Vault [Beta] - name: Release Management tags: - Release Groups - Releases - Orchestration Processes - Orchestration Activities - Orchestration Executions - Conflicts - Freeze - Reports - Uploads - name: Resilience Testing tags: - Actions - Action Templates - Chaos Components - Chaos Hubs - ChaosGuard Conditions - ChaosGuard Rules - DR Tests - Experiments - Experiment Templates - Faults - Fault Templates - Chaos Infrastructure - Health - Network Maps - Onboarding - Probes - Probe Templates - Chaos Recommendations - Risks