For the complete documentation index, see llms.txt. This page is also available as Markdown.

Workspaces

Workspaces Service handles the API for managing workspaces and triggering workflows against them.

List all workspace tags

get

List all tags

Path parameters
orgstring · min: 1 · max: 128Required

Org is the organisation identifier.

Example: pg
projectstring · min: 1 · max: 128Required

Project is the project identifier.

Example: fc9
Header parameters
Harness-Accountstring · min: 1 · max: 128Required

Account is the internal customer account ID.

Example: l
Responses
200

OK response.

application/json
string[]OptionalExample: ["Explicabo porro aut et aliquid.","At est debitis.","Doloribus tempora nemo inventore consequatur porro.","Atque veniam ea id."]
get/api/orgs/{org}/projects/{project}/tags
GET /api/orgs/{org}/projects/{project}/tags HTTP/1.1
Host: localhost:80
Harness-Account: l
Accept: */*
[
  "Eius deserunt qui aut quasi dolores.",
  "Minus aut rerum facilis laboriosam accusamus enim."
]

Show workspace metrics

get

Show metrics for workspaces

Path parameters
orgstring · min: 1 · max: 128Required

Org is the organisation identifier.

Example: xg
projectstring · min: 1 · max: 128Required

Project is the project identifier.

Example: lvo
Query parameters
start_timeinteger · int64Optional

Start time filter (Unix timestamp)

Example: 2454094628947063000
end_timeinteger · int64Optional

End time filter (Unix timestamp)

Example: 2086969625371467500
Header parameters
Harness-Accountstring · min: 1 · max: 128Required

Account is the internal customer account ID.

Example: se
Responses
200

OK response.

application/json
get/api/orgs/{org}/projects/{project}/workspace-metrics
GET /api/orgs/{org}/projects/{project}/workspace-metrics HTTP/1.1
Host: localhost:80
Harness-Account: se
Accept: */*
{
  "status_counts": {
    "Ab debitis quam qui.": 3364157374848411000,
    "Deleniti quisquam.": 8552386470240735000,
    "Suscipit et qui.": 119343305104830880
  }
}

List workspaces

get

List all workspaces.

Path parameters
orgstring · min: 1 · max: 128Required

Org is the organisation identifier.

Example: v9
projectstring · min: 1 · max: 128Required

Project is the project identifier.

Example: k
Query parameters
limitinteger · int64 · min: 1 · max: 1000Optional

Limit is the number of records to return for a page.

Default: 30Example: 30
pageinteger · int64 · min: 1Optional

Page is the page number to return relative to the page 'limit'.

Default: 1Example: 1
searchTermstringOptional

Filter results by partial name match

Default: ""Example: mysta
sortstring · enumOptional

Sort order for results

Default: name,ASCExample: name,ASCPossible values:
statusstring[]Optional

Status of the execution

Example: ["Ipsa earum error optio.","Error animi soluta voluptatibus laudantium voluptate dolore.","Nemo delectus suscipit facilis iusto.","Natus aliquid deserunt explicabo voluptatem ex."]
tagsstring[]Optional

Comma separated list of tags to filter by

Example: ["Commodi et repellendus aliquid.","Sunt voluptas est placeat.","Iusto nihil nemo."]
Header parameters
Harness-Accountstring · min: 1 · max: 128Required

Account is the internal customer account ID.

Example: 7
Responses
200

OK response.

application/json
get/api/orgs/{org}/projects/{project}/workspaces
GET /api/orgs/{org}/projects/{project}/workspaces HTTP/1.1
Host: localhost:80
Harness-Account: 7
Accept: */*
[
  {
    "account": "svj",
    "created": 3074050882718802000,
    "description": "this is a more detailed explanation of the resource.",
    "identifier": "63",
    "name": "resource name",
    "org": "g",
    "project": "ur",
    "status": "destroying",
    "updated": 8290525425254425000
  },
  {
    "account": "svj",
    "created": 3074050882718802000,
    "description": "this is a more detailed explanation of the resource.",
    "identifier": "63",
    "name": "resource name",
    "org": "g",
    "project": "ur",
    "status": "destroying",
    "updated": 8290525425254425000
  }
]

Create workspace

post

Create a new workspace.

Path parameters
orgstring · min: 1 · max: 128Required

Org is the organisation identifier.

Example: g
projectstring · min: 1 · max: 128Required

Project is the project identifier.

Example: v
Header parameters
Harness-Accountstring · min: 1 · max: 128Required

Account is the internal customer account ID.

Example: z26
Body
budgetnumber · floatOptional

define the budget for a specific workspace

Example: 0.5187297
ccm_cost_enabledbooleanOptional

define if CCM cost integration is enabled for this workspace

Default: falseExample: false
cost_breakdown_jsonstringOptional

cost_breakdown_json is the identifier to the breakdown cost file from the current execution that was applied successfully

Example: c4a2d99bc28d236098a095277b7eb0718d6be068
cost_diff_jsonstringOptional

cost_diff_json is the identifier to the diff cost file between the previous and current successful executions

Example: c4a2d99bc28d236098a095277b7eb0718d6be068
cost_estimation_enabledbooleanOptional

define if cost estimation operations will be performed in this workspace

Default: falseExample: true
create_default_pipelinesbooleanOptional

if true, auto-generate default pipelines for the workspace provisioner at creation time

Default: trueExample: false
descriptionstringOptional

Description provides long-form text about the resource.

Example: this is a more detailed explanation of the resource.
idinteger · int64Optional

ID PK for internal uses

Example: 5797109307449759000
identifierstring · min: 1 · max: 128Required

Workspace identifier.

Example: miy
modules_jsonstringOptional

modules_json is the identifier of any modules metadata associated with this workspace

Example: c4a2d99bc28d236098a095277b7eb0718d6be068
namestring · min: 1 · max: 128Required

Name is the human readable name for the resource.

Example: resource name
provider_connectorstringRequired

Provider Connector is the reference to the connector for the infrastructure provider.

Example: Optio blanditiis eum mollitia excepturi voluptatem nesciunt.
providers_jsonstringOptional

providers_json is the identifier of any modules metadata associated with this workspace

Example: c4a2d99bc28d236098a095277b7eb0718d6be068
provisionerstringRequired

Provisioner defines the provisioning tool to use.

Example: Velit ab quidem a.
provisioner_configurationstringOptional

Provisioner configuration metadata (key value pair provisioner specific configuration).

Example: Dolorem fuga.
provisioner_versionstringOptional

Provisioner Version defines the tool version to use.

Default: latestExample: Rerum nihil fugiat.
prune_sensitive_databooleanOptional

prune_sensitive_data is a flag to enable or disable pruning of sensitive data

Default: falseExample: true
repositorystringOptional

Repository is the name of the repository to use.

Example: Doloremque qui maxime est.
repository_branchstringOptional

Repository Branch in which the code should be accessed.

Example: main
repository_commitstringOptional

Repository Commit/Tag in which the code should be accessed.

Example: abc10ed
repository_connectorstringOptional

Repository Connector is the reference to the connector to use for this code.

Example: Quia consequatur unde architecto enim velit aspernatur.
repository_pathstringOptional

Repository Path is the path in which the infra code resides.

Default: ""
repository_shastringOptional

Repository SHA in which the code should be accessed.

Example: abc10ed
repository_submodulesstring · enumOptional

repository_submodules is the instruction about whether to clone submodules in the pipeline step

Default: falseExample: recursivePossible values:
run_allbooleanOptional

Run-All terragrunt modules.

Example: true
sparse_checkoutstringOptional

List of patterens that will be used for sparse checkout option of git clone

Example: Perferendis ut dolorem magnam.
state_checksumstringOptional

state_checksum is the sha-256 checksum of terraform state file

Example: d21c1662d8ce2c74f24efdc8db93eb34473b86810aeccca4b1518f70b0ccde8f
terraform_plan_jsonstringOptional

terraform_plan_json is the identifier to the current state file only in JSON format.

Example: f9e21473daaa2674d862b67a1339f4570e86de17
terraform_statestringOptional

terraform_state is the identifier to the plan file used to create the latest state.

Example: fc1200c7a7aa52109d762a9f005b149abef01479
terraform_state_jsonstringOptional

terraform_state_json is the identifier to the plan file used to create the latest state only in JSON format.

Example: c4a2d99bc28d236098a095277b7eb0718d6be068
terragrunt_providerbooleanOptional

Whether this workspace uses terragrunt to provision infrastructure

Default: falseExample: true
terragrunt_versionstringOptional

Terragrunt Version to use when provisioner is terragrunt.

Example: Qui adipisci quia autem itaque.
variable_setsstring[]Optional

Attached Variable Sets references

Example: ["Nam delectus architecto consequatur sapiente possimus.","Eum qui quae."]
Responses
200

OK response.

application/json

Create-WorkspaceResponseBody result type (default view)

post/api/orgs/{org}/projects/{project}/workspaces
POST /api/orgs/{org}/projects/{project}/workspaces HTTP/1.1
Host: localhost:80
Harness-Account: z26
Content-Type: application/json
Accept: */*
Content-Length: 3838

{
  "associated_template": {
    "template_id": "p",
    "version": "kd2"
  },
  "budget": 0.837016,
  "ccm_cost_enabled": false,
  "cost_breakdown_json": "c4a2d99bc28d236098a095277b7eb0718d6be068",
  "cost_diff_json": "c4a2d99bc28d236098a095277b7eb0718d6be068",
  "cost_estimation_enabled": true,
  "create_default_pipelines": true,
  "default_pipelines": {
    "Molestias aliquid deleniti nesciunt.": {
      "project_pipeline": "Enim provident qui rerum.",
      "workspace_pipeline": "Vel ut sint dolor non."
    },
    "Voluptas soluta.": {
      "project_pipeline": "Enim provident qui rerum.",
      "workspace_pipeline": "Vel ut sint dolor non."
    },
    "Voluptas sunt voluptatem ullam voluptas quod.": {
      "project_pipeline": "Enim provident qui rerum.",
      "workspace_pipeline": "Vel ut sint dolor non."
    }
  },
  "description": "this is a more detailed explanation of the resource.",
  "environment_variables": {
    "Recusandae aliquid cumque ipsam.": {
      "key": "ip",
      "value": "Amet qui quaerat magni velit et.",
      "value_type": "number"
    }
  },
  "id": 1566479696924710100,
  "identifier": "4",
  "modules_json": "c4a2d99bc28d236098a095277b7eb0718d6be068",
  "name": "resource name",
  "provider_connector": "Praesentium ducimus vitae rem culpa accusamus.",
  "provider_connectors": [
    {
      "connector_ref": "o5y",
      "created": 1627590400,
      "id": 9061163623315803000,
      "terragrunt_provider": false,
      "type": "gcp",
      "updated": 1627686800,
      "workspace_id": 8939960908366302000
    },
    {
      "connector_ref": "o5y",
      "created": 1627590400,
      "id": 9061163623315803000,
      "terragrunt_provider": false,
      "type": "gcp",
      "updated": 1627686800,
      "workspace_id": 8939960908366302000
    },
    {
      "connector_ref": "o5y",
      "created": 1627590400,
      "id": 9061163623315803000,
      "terragrunt_provider": false,
      "type": "gcp",
      "updated": 1627686800,
      "workspace_id": 8939960908366302000
    },
    {
      "connector_ref": "o5y",
      "created": 1627590400,
      "id": 9061163623315803000,
      "terragrunt_provider": false,
      "type": "gcp",
      "updated": 1627686800,
      "workspace_id": 8939960908366302000
    }
  ],
  "providers_json": "c4a2d99bc28d236098a095277b7eb0718d6be068",
  "provisioner": "Quisquam voluptas non aliquam quod totam dolor.",
  "provisioner_configuration": "Pariatur laboriosam.",
  "provisioner_version": "Cumque autem nihil porro quibusdam similique.",
  "prune_sensitive_data": true,
  "repository": "Qui aliquid molestias.",
  "repository_branch": "main",
  "repository_commit": "abc10ed",
  "repository_connector": "Laboriosam vero quasi nemo.",
  "repository_path": "",
  "repository_sha": "abc10ed",
  "repository_submodules": "recursive",
  "run_all": false,
  "sparse_checkout": "Doloremque aut aut.",
  "state_checksum": "d21c1662d8ce2c74f24efdc8db93eb34473b86810aeccca4b1518f70b0ccde8f",
  "tags": {
    "cost-center": "engineering",
    "environment": "production",
    "team": "platform"
  },
  "terraform_plan_json": "f9e21473daaa2674d862b67a1339f4570e86de17",
  "terraform_state": "fc1200c7a7aa52109d762a9f005b149abef01479",
  "terraform_state_json": "c4a2d99bc28d236098a095277b7eb0718d6be068",
  "terraform_variable_files": [
    {
      "repository": "Omnis facere numquam.",
      "repository_branch": "main",
      "repository_commit": "abc10ed",
      "repository_connector": "Quod repellat unde modi libero.",
      "repository_path": "",
      "repository_sha": "abc10ed"
    },
    {
      "repository": "Omnis facere numquam.",
      "repository_branch": "main",
      "repository_commit": "abc10ed",
      "repository_connector": "Quod repellat unde modi libero.",
      "repository_path": "",
      "repository_sha": "abc10ed"
    },
    {
      "repository": "Omnis facere numquam.",
      "repository_branch": "main",
      "repository_commit": "abc10ed",
      "repository_connector": "Quod repellat unde modi libero.",
      "repository_path": "",
      "repository_sha": "abc10ed"
    }
  ],
  "terraform_variables": {
    "Corporis ipsa quis.": {
      "key": "ip",
      "value": "Amet qui quaerat magni velit et.",
      "value_type": "number"
    },
    "Inventore illum quae cumque architecto sequi.": {
      "key": "ip",
      "value": "Amet qui quaerat magni velit et.",
      "value_type": "number"
    },
    "Quod sequi impedit.": {
      "key": "ip",
      "value": "Amet qui quaerat magni velit et.",
      "value_type": "number"
    }
  },
  "terragrunt_provider": true,
  "terragrunt_version": "Tenetur ut cupiditate eaque.",
  "variable_sets": [
    "Ut iure.",
    "Ut enim minus voluptatem fuga."
  ]
}
{
  "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": "{\n    \"deny\": [\n        \"deployment stage 'deploy' does not have a HarnessApproval step\"\n    ],\n    \"stages_with_approval\": []\n}",
            "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": "{\n    \"deny\": [\n        \"deployment stage 'deploy' does not have a HarnessApproval step\"\n    ],\n    \"stages_with_approval\": []\n}",
            "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": "{\n    \"deny\": [\n        \"deployment stage 'deploy' does not have a HarnessApproval step\"\n    ],\n    \"stages_with_approval\": []\n}",
            "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": "{\n    \"deny\": [\n        \"deployment stage 'deploy' does not have a HarnessApproval step\"\n    ],\n    \"stages_with_approval\": []\n}",
            "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": "{\n    \"deny\": [\n        \"deployment stage 'deploy' does not have a HarnessApproval step\"\n    ],\n    \"stages_with_approval\": []\n}",
            "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": "{\n    \"deny\": [\n        \"deployment stage 'deploy' does not have a HarnessApproval step\"\n    ],\n    \"stages_with_approval\": []\n}",
            "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": "{\n    \"deny\": [\n        \"deployment stage 'deploy' does not have a HarnessApproval step\"\n    ],\n    \"stages_with_approval\": []\n}",
            "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": "{\n    \"deny\": [\n        \"deployment stage 'deploy' does not have a HarnessApproval step\"\n    ],\n    \"stages_with_approval\": []\n}",
            "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"
  }
}

Show workspace

get

Show an individual workspace.

Path parameters
orgstring · min: 1 · max: 128Required

Org is the organisation identifier.

Example: 3qr
projectstring · min: 1 · max: 128Required

Project is the project identifier.

Example: ime
identifierstring · min: 1 · max: 128Required

Identifier is the project identifier.

Example: mi
Header parameters
Harness-Accountstring · min: 1 · max: 128Required

Account is the internal customer account ID.

Example: 4m
Responses
200

OK response.

application/json

Show-WorkspaceResponseBody result type (default view)

accountstring · min: 1 · max: 128Required

Account is the internal customer account ID.

Example: s
backend_lockedbooleanOptional

Defines if the remote backend is locked or not

Default: falseExample: true
budgetnumber · floatOptional

define the budget for a specific workspace

Example: 0.24248117
ccm_cost_enabledbooleanOptional

define if CCM cost integration is enabled for this workspace

Default: falseExample: true
cost_breakdown_jsonstringOptional

cost_breakdown_json is the identifier to the breakdown cost file from the current execution that was applied successfully

Example: c4a2d99bc28d236098a095277b7eb0718d6be068
cost_diff_jsonstringOptional

cost_diff_json is the identifier to the diff cost file between the previous and current successful executions

Example: c4a2d99bc28d236098a095277b7eb0718d6be068
cost_estimation_enabledbooleanOptional

define if cost estimation operations will be performed in this workspace

Default: falseExample: true
createdinteger · int64Required

Created is the unix timestamp at which the resource was originally created in milliseconds.

Example: 5933685883716351000
descriptionstringOptional

Description provides long-form text about the resource.

Example: this is a more detailed explanation of the resource.
identifierstring · min: 1 · max: 128Required

Workspace identifier.

Example: hz
modules_jsonstringOptional

modules_json is the identifier of any modules metadata associated with this workspace

Example: c4a2d99bc28d236098a095277b7eb0718d6be068
namestring · min: 1 · max: 128Required

Name is the human readable name for the resource.

Example: resource name
orgstring · min: 1 · max: 128Required

Org is the organisation identifier.

Example: 55
projectstring · min: 1 · max: 128Required

Project is the project identifier.

Example: r9r
provider_connectorstringRequired

Provider Connector is the reference to the connector for the infrastructure provider.

Example: Cum quis culpa quos est.
providers_jsonstringOptional

providers_json is the identifier of any modules metadata associated with this workspace

Example: c4a2d99bc28d236098a095277b7eb0718d6be068
provisionerstringRequired

Provisioner defines the provisioning tool to use.

Example: Ipsa impedit qui quia.
provisioner_configurationstringOptional

Provisioner configuration metadata (key value pair provisioner specific configuration).

Example: Ex deleniti libero dignissimos amet laborum.
provisioner_datastringRequiredExample: Omnis perspiciatis est aspernatur id libero.
provisioner_versionstringOptional

Provisioner Version defines the tool version to use.

Default: latestExample: Ullam officia.
prune_sensitive_databooleanOptional

prune_sensitive_data is a flag to enable or disable pruning of sensitive data

Default: falseExample: true
repositorystringOptional

Repository is the name of the repository to use.

Example: Vitae consectetur aut mollitia quod.
repository_branchstringOptional

Repository Branch in which the code should be accessed.

Example: main
repository_commitstringOptional

Repository Commit/Tag in which the code should be accessed.

Example: abc10ed
repository_connectorstringRequired

Repository Connector is the reference to the connector to use for this code.

Example: Accusantium delectus quos.
repository_pathstringOptional

Repository Path is the path in which the infra code resides.

Default: ""
repository_shastringOptional

Repository SHA in which the code should be accessed.

Example: abc10ed
repository_submodulesstring · enumOptional

repository_submodules is the instruction about whether to clone submodules in the pipeline step

Default: falseExample: recursivePossible values:
run_allbooleanOptional

Run-All terragrunt modules.

Example: true
sparse_checkoutstringOptional

List of patterens that will be used for sparse checkout option of git clone

Example: Voluptatum molestiae.
state_checksumstringOptional

state_checksum is the sha-256 checksum of terraform state file

Example: d21c1662d8ce2c74f24efdc8db93eb34473b86810aeccca4b1518f70b0ccde8f
statusstring · enumRequired

The status of the workspace

Example: rollback_appliedPossible values:
terraform_plan_jsonstringOptional

terraform_plan_json is the identifier to the current state file only in JSON format.

Example: f9e21473daaa2674d862b67a1339f4570e86de17
terraform_statestringOptional

terraform_state is the identifier to the plan file used to create the latest state.

Example: fc1200c7a7aa52109d762a9f005b149abef01479
terraform_state_jsonstringOptional

terraform_state_json is the identifier to the plan file used to create the latest state only in JSON format.

Example: c4a2d99bc28d236098a095277b7eb0718d6be068
terragrunt_providerbooleanOptional

Whether this workspace uses terragrunt to provision infrastructure

Default: falseExample: false
terragrunt_versionstringOptional

Terragrunt Version to use when provisioner is terragrunt.

Example: Quibusdam sint eos harum.
updatedinteger · int64Required

Modified is the unix timestamp at which the resource was last modified in milliseconds.

Example: 8041006851860804000
variable_setsstring[]Optional

Attached Variable Sets references

Example: ["Sunt debitis autem.","Nostrum tempore beatae enim vel neque ullam.","Pariatur et porro dicta ad facilis.","Eum earum facilis."]
get/api/orgs/{org}/projects/{project}/workspaces/{identifier}
GET /api/orgs/{org}/projects/{project}/workspaces/{identifier} HTTP/1.1
Host: localhost:80
Harness-Account: 4m
Accept: */*
{
  "account": "x43",
  "associated_template": {
    "template_id": "uv",
    "version": "uh"
  },
  "backend_locked": false,
  "budget": 0.8677249,
  "ccm_cost_enabled": true,
  "cost_breakdown_json": "c4a2d99bc28d236098a095277b7eb0718d6be068",
  "cost_diff_json": "c4a2d99bc28d236098a095277b7eb0718d6be068",
  "cost_estimation_enabled": true,
  "created": 2672083173112297500,
  "default_pipelines": {
    "Perferendis tempore dolorem.": {
      "project_pipeline": "Repellendus fugiat nemo reiciendis velit porro et.",
      "workspace_pipeline": "Praesentium voluptas asperiores."
    },
    "Quia suscipit nostrum ea et at.": {
      "project_pipeline": "Repellendus fugiat nemo reiciendis velit porro et.",
      "workspace_pipeline": "Praesentium voluptas asperiores."
    }
  },
  "description": "this is a more detailed explanation of the resource.",
  "environment_variables": {
    "Amet mollitia et voluptate omnis minima laboriosam.": {
      "created": 2044074723353686500,
      "key": "xjv",
      "updated": 610470478830937900,
      "value": "Quos sunt magni reiciendis sapiente aperiam ipsum.",
      "value_type": "json"
    }
  },
  "identifier": "2sd",
  "lock": {
    "created_at": 4486103249482315300,
    "id": "Autem et.",
    "locked_by_display_name": "Dolores dicta maxime dicta.",
    "locked_by_principal_id": "Voluptatum veritatis dolore.",
    "locked_by_principal_type": "Velit expedita.",
    "manual": true,
    "reason": "Non adipisci."
  },
  "modules_json": "c4a2d99bc28d236098a095277b7eb0718d6be068",
  "name": "resource name",
  "org": "u1",
  "project": "1ni",
  "provider_connector": "Recusandae quaerat est aperiam dolorum nostrum.",
  "provider_connectors": [
    {
      "connector_ref": "w78",
      "created": 1627590400,
      "id": 1403491781209685000,
      "terragrunt_provider": false,
      "type": "vault",
      "updated": 1627686800,
      "workspace_id": 8865635828231279000
    },
    {
      "connector_ref": "w78",
      "created": 1627590400,
      "id": 1403491781209685000,
      "terragrunt_provider": false,
      "type": "vault",
      "updated": 1627686800,
      "workspace_id": 8865635828231279000
    },
    {
      "connector_ref": "w78",
      "created": 1627590400,
      "id": 1403491781209685000,
      "terragrunt_provider": false,
      "type": "vault",
      "updated": 1627686800,
      "workspace_id": 8865635828231279000
    },
    {
      "connector_ref": "w78",
      "created": 1627590400,
      "id": 1403491781209685000,
      "terragrunt_provider": false,
      "type": "vault",
      "updated": 1627686800,
      "workspace_id": 8865635828231279000
    }
  ],
  "providers_json": "c4a2d99bc28d236098a095277b7eb0718d6be068",
  "provisioner": "Facere non veritatis quibusdam quidem.",
  "provisioner_configuration": "Ab tempora et nemo quidem ad molestias.",
  "provisioner_data": "Sint sint dolorum quo quod.",
  "provisioner_version": "Culpa eaque quis dolores.",
  "prune_sensitive_data": true,
  "repository": "Assumenda et beatae sit et iure.",
  "repository_branch": "main",
  "repository_commit": "abc10ed",
  "repository_connector": "Aliquid in.",
  "repository_path": "",
  "repository_sha": "abc10ed",
  "repository_submodules": "recursive",
  "run_all": false,
  "sparse_checkout": "Natus ea fugit porro assumenda et nulla.",
  "state_checksum": "d21c1662d8ce2c74f24efdc8db93eb34473b86810aeccca4b1518f70b0ccde8f",
  "status": "active",
  "tags": {
    "cost-center": "engineering",
    "environment": "production",
    "team": "platform"
  },
  "terraform_plan_json": "f9e21473daaa2674d862b67a1339f4570e86de17",
  "terraform_state": "fc1200c7a7aa52109d762a9f005b149abef01479",
  "terraform_state_json": "c4a2d99bc28d236098a095277b7eb0718d6be068",
  "terraform_variable_files": [
    {
      "repository": "Sapiente rerum vero fugit in velit.",
      "repository_branch": "main",
      "repository_commit": "abc10ed",
      "repository_connector": "Dolores id non odio molestiae nisi.",
      "repository_path": "",
      "repository_sha": "abc10ed"
    },
    {
      "repository": "Sapiente rerum vero fugit in velit.",
      "repository_branch": "main",
      "repository_commit": "abc10ed",
      "repository_connector": "Dolores id non odio molestiae nisi.",
      "repository_path": "",
      "repository_sha": "abc10ed"
    },
    {
      "repository": "Sapiente rerum vero fugit in velit.",
      "repository_branch": "main",
      "repository_commit": "abc10ed",
      "repository_connector": "Dolores id non odio molestiae nisi.",
      "repository_path": "",
      "repository_sha": "abc10ed"
    },
    {
      "repository": "Sapiente rerum vero fugit in velit.",
      "repository_branch": "main",
      "repository_commit": "abc10ed",
      "repository_connector": "Dolores id non odio molestiae nisi.",
      "repository_path": "",
      "repository_sha": "abc10ed"
    }
  ],
  "terraform_variables": {
    "Asperiores libero atque.": {
      "created": 2044074723353686500,
      "key": "xjv",
      "updated": 610470478830937900,
      "value": "Quos sunt magni reiciendis sapiente aperiam ipsum.",
      "value_type": "json"
    },
    "Eum et sapiente et quod.": {
      "created": 2044074723353686500,
      "key": "xjv",
      "updated": 610470478830937900,
      "value": "Quos sunt magni reiciendis sapiente aperiam ipsum.",
      "value_type": "json"
    },
    "Quis qui.": {
      "created": 2044074723353686500,
      "key": "xjv",
      "updated": 610470478830937900,
      "value": "Quos sunt magni reiciendis sapiente aperiam ipsum.",
      "value_type": "json"
    }
  },
  "terragrunt_provider": false,
  "terragrunt_version": "Voluptatibus est quo.",
  "updated": 4279440511824908000,
  "variable_sets": [
    "Occaecati mollitia tenetur quis libero debitis.",
    "Facere ipsa consequuntur voluptatem ratione voluptas fugiat.",
    "Aut laborum est."
  ]
}

Update workspace

put

Updates the given workspace with new info.

Path parameters
orgstring · min: 1 · max: 128Required

Org is the organisation identifier.

Example: cs
projectstring · min: 1 · max: 128Required

Project is the project identifier.

Example: np
identifierstring · min: 1 · max: 128Required

Workspace identifier.

Example: wko
Header parameters
Harness-Accountstring · min: 1 · max: 128Required

Account is the internal customer account ID.

Example: da
Body
budgetnumber · floatOptional

define the budget for a specific workspace

Example: 0.8361195
ccm_cost_enabledbooleanOptional

define if CCM cost integration is enabled for this workspace

Default: falseExample: false
cost_estimation_enabledbooleanOptional

define if cost estimation operations will be performed in this workspace

Default: falseExample: true
descriptionstringOptional

Description provides long-form text about the resource.

Example: this is a more detailed explanation of the resource.
namestring · min: 1 · max: 128Required

Name is the human readable name for the resource.

Example: resource name
provider_connectorstringRequired

Provider Connector is the reference to the connector for the infrastructure provider.

Example: Quis labore cum suscipit.
provisionerstringRequired

Provisioner defines the provisioning tool to use.

Example: Aut harum rem adipisci sapiente ut voluptatem.
provisioner_configurationstringOptional

Provisioner configuration metadata (key value pair provisioner specific configuration).

Example: Et saepe accusantium occaecati et.
provisioner_versionstringOptional

Provisioner Version defines the tool version to use.

Default: latestExample: Suscipit dolor ea maiores aliquam perferendis.
prune_sensitive_databooleanOptional

prune_sensitive_data is a flag to enable or disable pruning of sensitive data

Default: falseExample: true
repositorystringOptional

Repository is the name of the repository to use.

Example: Nihil et repellat.
repository_branchstringOptional

Repository Branch in which the code should be accessed.

Example: main
repository_commitstringOptional

Repository Commit/Tag in which the code should be accessed.

Example: abc10ed
repository_connectorstringOptional

Repository Connector is the reference to the connector to use for this code.

Example: Nostrum sit unde optio eveniet.
repository_pathstringOptional

Repository Path is the path in which the infra code resides.

Default: ""
repository_shastringOptional

Repository SHA in which the code should be accessed.

Example: abc10ed
repository_submodulesstring · enumOptional

repository_submodules is the instruction about whether to clone submodules in the pipeline step

Default: falseExample: recursivePossible values:
run_allbooleanOptional

Run-All terragrunt modules.

Example: true
sparse_checkoutstringOptional

List of patterens that will be used for sparse checkout option of git clone

Example: Eveniet dolores nesciunt ut numquam.
terragrunt_providerbooleanOptional

Whether this workspace uses terragrunt to provision infrastructure

Default: falseExample: false
terragrunt_versionstringOptional

Terragrunt Version to use when provisioner is terragrunt.

Example: Quos eos vel vero et quis ea.
variable_setsstring[]Optional

Attached Variable Sets references

Example: ["Fugiat sit quidem at consequatur cumque.","Officiis omnis autem qui dolores."]
Responses
200

OK response.

application/json
put/api/orgs/{org}/projects/{project}/workspaces/{identifier}
PUT /api/orgs/{org}/projects/{project}/workspaces/{identifier} HTTP/1.1
Host: localhost:80
Harness-Account: da
Content-Type: application/json
Accept: */*
Content-Length: 3048

{
  "budget": 0.7964625,
  "ccm_cost_enabled": true,
  "cost_estimation_enabled": true,
  "default_pipelines": {
    "Dolorem dignissimos tempore et odio corrupti et.": {
      "project_pipeline": "Enim provident qui rerum.",
      "workspace_pipeline": "Vel ut sint dolor non."
    },
    "Sit blanditiis sunt ut.": {
      "project_pipeline": "Enim provident qui rerum.",
      "workspace_pipeline": "Vel ut sint dolor non."
    }
  },
  "description": "this is a more detailed explanation of the resource.",
  "environment_variables": {
    "Adipisci non et sunt.": {
      "key": "ip",
      "value": "Amet qui quaerat magni velit et.",
      "value_type": "number"
    },
    "Nostrum rerum ut voluptatem voluptas.": {
      "key": "ip",
      "value": "Amet qui quaerat magni velit et.",
      "value_type": "number"
    },
    "Voluptas adipisci.": {
      "key": "ip",
      "value": "Amet qui quaerat magni velit et.",
      "value_type": "number"
    }
  },
  "name": "resource name",
  "provider_connector": "Recusandae facilis quis molestiae voluptates.",
  "provider_connectors": [
    {
      "connector_ref": "o5y",
      "created": 1627590400,
      "id": 9061163623315803000,
      "terragrunt_provider": false,
      "type": "gcp",
      "updated": 1627686800,
      "workspace_id": 8939960908366302000
    },
    {
      "connector_ref": "o5y",
      "created": 1627590400,
      "id": 9061163623315803000,
      "terragrunt_provider": false,
      "type": "gcp",
      "updated": 1627686800,
      "workspace_id": 8939960908366302000
    },
    {
      "connector_ref": "o5y",
      "created": 1627590400,
      "id": 9061163623315803000,
      "terragrunt_provider": false,
      "type": "gcp",
      "updated": 1627686800,
      "workspace_id": 8939960908366302000
    },
    {
      "connector_ref": "o5y",
      "created": 1627590400,
      "id": 9061163623315803000,
      "terragrunt_provider": false,
      "type": "gcp",
      "updated": 1627686800,
      "workspace_id": 8939960908366302000
    }
  ],
  "provisioner": "Voluptatem saepe.",
  "provisioner_configuration": "Sunt repudiandae totam.",
  "provisioner_version": "Ipsam qui.",
  "prune_sensitive_data": true,
  "repository": "Dolorum id esse rem aut.",
  "repository_branch": "main",
  "repository_commit": "abc10ed",
  "repository_connector": "Voluptas totam explicabo.",
  "repository_path": "",
  "repository_sha": "abc10ed",
  "repository_submodules": "recursive",
  "run_all": true,
  "sparse_checkout": "Rerum architecto qui fugit laborum.",
  "tags": {
    "cost-center": "engineering",
    "environment": "production",
    "team": "platform"
  },
  "terraform_variable_files": [
    {
      "repository": "Omnis facere numquam.",
      "repository_branch": "main",
      "repository_commit": "abc10ed",
      "repository_connector": "Quod repellat unde modi libero.",
      "repository_path": "",
      "repository_sha": "abc10ed"
    },
    {
      "repository": "Omnis facere numquam.",
      "repository_branch": "main",
      "repository_commit": "abc10ed",
      "repository_connector": "Quod repellat unde modi libero.",
      "repository_path": "",
      "repository_sha": "abc10ed"
    }
  ],
  "terraform_variables": {
    "Ipsam est iusto.": {
      "key": "ip",
      "value": "Amet qui quaerat magni velit et.",
      "value_type": "number"
    },
    "Vel facilis deleniti eum odio nihil.": {
      "key": "ip",
      "value": "Amet qui quaerat magni velit et.",
      "value_type": "number"
    }
  },
  "terragrunt_provider": false,
  "terragrunt_version": "Nostrum at pariatur ut quis veniam et.",
  "variable_sets": [
    "Sint in magnam excepturi quam quis.",
    "Recusandae ex laboriosam rerum.",
    "Enim eos quaerat quis sit quos adipisci.",
    "Deserunt dolorem accusamus ipsam maiores eum molestias."
  ]
}
{
  "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": "{\n    \"deny\": [\n        \"deployment stage 'deploy' does not have a HarnessApproval step\"\n    ],\n    \"stages_with_approval\": []\n}",
            "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": "{\n    \"deny\": [\n        \"deployment stage 'deploy' does not have a HarnessApproval step\"\n    ],\n    \"stages_with_approval\": []\n}",
            "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": "{\n    \"deny\": [\n        \"deployment stage 'deploy' does not have a HarnessApproval step\"\n    ],\n    \"stages_with_approval\": []\n}",
            "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": "{\n    \"deny\": [\n        \"deployment stage 'deploy' does not have a HarnessApproval step\"\n    ],\n    \"stages_with_approval\": []\n}",
            "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": "{\n    \"deny\": [\n        \"deployment stage 'deploy' does not have a HarnessApproval step\"\n    ],\n    \"stages_with_approval\": []\n}",
            "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": "{\n    \"deny\": [\n        \"deployment stage 'deploy' does not have a HarnessApproval step\"\n    ],\n    \"stages_with_approval\": []\n}",
            "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": "{\n    \"deny\": [\n        \"deployment stage 'deploy' does not have a HarnessApproval step\"\n    ],\n    \"stages_with_approval\": []\n}",
            "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": "{\n    \"deny\": [\n        \"deployment stage 'deploy' does not have a HarnessApproval step\"\n    ],\n    \"stages_with_approval\": []\n}",
            "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"
  }
}

Destroy workspace

delete

Deletes the given workspace.

Path parameters
orgstring · min: 1 · max: 128Required

Org is the organisation identifier.

Example: dfx
projectstring · min: 1 · max: 128Required

Project is the project identifier.

Example: k
identifierstring · min: 1 · max: 128Required

Identifier is the project identifier.

Example: b
Header parameters
Harness-Accountstring · min: 1 · max: 128Required

Account is the internal customer account ID.

Example: ain
Responses
204

No Content response.

No content

delete/api/orgs/{org}/projects/{project}/workspaces/{identifier}
DELETE /api/orgs/{org}/projects/{project}/workspaces/{identifier} HTTP/1.1
Host: localhost:80
Harness-Account: ain
Accept: */*

No content

Unlock workspace

post

Unlock a workspace, removing the lock regardless of its origin (manual or automatic). Idempotent.

Path parameters
orgstring · min: 1 · max: 128Required

Org is the organisation identifier.

Example: b
projectstring · min: 1 · max: 128Required

Project is the project identifier.

Example: u
identifierstring · min: 1 · max: 128Required

Identifier is the project identifier.

Example: mqn
Header parameters
Harness-Accountstring · min: 1 · max: 128Required

Account is the internal customer account ID.

Example: 0
Responses
200

OK response.

No content

post/api/orgs/{org}/projects/{project}/workspaces/{identifier}/actions/force-unlock
POST /api/orgs/{org}/projects/{project}/workspaces/{identifier}/actions/force-unlock HTTP/1.1
Host: localhost:80
Harness-Account: 0
Accept: */*

No content

Lock workspace

post

Create a manual lock on a workspace.

Path parameters
orgstring · min: 1 · max: 128Required

Org is the organisation identifier.

Example: d
projectstring · min: 1 · max: 128Required

Project is the project identifier.

Example: c
identifierstring · min: 1 · max: 128Required

Identifier is the project identifier.

Example: vh6
Header parameters
Harness-Accountstring · min: 1 · max: 128Required

Account is the internal customer account ID.

Example: 4sc
Body
reasonstring · max: 1024Optional

Reason for locking the workspace (optional)

Example: Q2 freeze
Responses
200

OK response.

application/json
idstring · uuidRequired

Lock ID

Example: ae73eacd-4118-4444-866d-972b0dbbaf7b
locked_by_display_namestringRequired

Display name of who locked

Example: Corporis nisi numquam ea excepturi sint.
locked_by_principal_idstringRequired

Principal ID who locked

Example: Incidunt suscipit assumenda autem.
locked_by_principal_typestringRequired

Type of principal

Example: Enim ut aliquam.
manualbooleanRequired

Whether the lock is manual (user-initiated). true = manual lock, false = automatic lock

Example: true
reasonstringRequired

Reason for lock

Example: Rerum omnis corporis.
workspacestringRequired

Workspace identifier

Example: Cumque at totam velit voluptas.
post/api/orgs/{org}/projects/{project}/workspaces/{identifier}/actions/lock
POST /api/orgs/{org}/projects/{project}/workspaces/{identifier}/actions/lock HTTP/1.1
Host: localhost:80
Harness-Account: 4sc
Content-Type: application/json
Accept: */*
Content-Length: 22

{
  "reason": "Q2 freeze"
}
{
  "id": "c01a87e3-c2d7-460c-958b-c3f8a0b75a87",
  "locked_by_display_name": "Deserunt doloribus enim temporibus illum.",
  "locked_by_principal_id": "Vero repellendus recusandae.",
  "locked_by_principal_type": "Ex adipisci eos et.",
  "manual": false,
  "reason": "Reiciendis unde quam iusto id voluptate nesciunt.",
  "workspace": "Excepturi quas perspiciatis."
}

List modules

get

List modules associated with this workspace.

Path parameters
orgstring · min: 1 · max: 128Required

Org is the organisation identifier.

Example: yr4
projectstring · min: 1 · max: 128Required

Project is the project identifier.

Example: on
identifierstring · min: 1 · max: 128Required

Identifier is the project identifier.

Example: 604
Header parameters
Harness-Accountstring · min: 1 · max: 128Required

Account is the internal customer account ID.

Example: ph
Responses
200

OK response.

application/json

Represents an individual OpenTofu or Terraform module.

invocationsinteger · int64Required

Number of times this module is invoked in the workspace

Example: 3
keystringRequired

Module key

Example: ec2-instance_test
sourcestringRequired

Module source

Example: registry.opentofu.org/terraform-aws-modules/ec2-instance/aws//examples/complete
stack_pathstringOptional

Terragrunt stack path (empty for regular Terraform workspaces)

Example: environments/prod/ec2
versionstringRequired

Module version

Example: 5.0.0
get/api/orgs/{org}/projects/{project}/workspaces/{identifier}/modules
GET /api/orgs/{org}/projects/{project}/workspaces/{identifier}/modules HTTP/1.1
Host: localhost:80
Harness-Account: ph
Accept: */*
[
  {
    "invocations": 3,
    "key": "ec2-instance_test",
    "source": "registry.opentofu.org/terraform-aws-modules/ec2-instance/aws//examples/complete",
    "stack_path": "environments/prod/ec2",
    "version": "5.0.0"
  },
  {
    "invocations": 3,
    "key": "ec2-instance_test",
    "source": "registry.opentofu.org/terraform-aws-modules/ec2-instance/aws//examples/complete",
    "stack_path": "environments/prod/ec2",
    "version": "5.0.0"
  }
]

List resources

get

List resources associated with this workspace.

Path parameters
orgstring · min: 1 · max: 128Required

Org is the organisation identifier.

Example: b
projectstring · min: 1 · max: 128Required

Project is the project identifier.

Example: 3q2
identifierstring · min: 1 · max: 128Required

Workspace identifier.

Example: d
Query parameters
limitinteger · int64 · min: 1 · max: 1000Optional

Limit is the number of records to return for a page. When omitted, all records are returned.

Example: 30
pageinteger · int64 · min: 1Optional

Page is the page number to return relative to the page 'limit'. When omitted, all records are returned.

Example: 1
resource_typesstring[]Optional

Resource types to filter by.

Example: ["aws_instance","google_compute_instance"]
Header parameters
Harness-Accountstring · min: 1 · max: 128Required

Account is the internal customer account ID.

Example: 8c
Responses
200

OK response.

application/json
get/api/orgs/{org}/projects/{project}/workspaces/{identifier}/resources
GET /api/orgs/{org}/projects/{project}/workspaces/{identifier}/resources HTTP/1.1
Host: localhost:80
Harness-Account: 8c
Accept: */*
{
  "data_sources": [
    {
      "attributes": {
        "ami": "ami-830c94ec",
        "instance_type": "t2.micro"
      },
      "createdAt": 1627590400,
      "drift_attributes": {
        "instance_type": "t2.nano"
      },
      "drift_status": "changed",
      "lastSyncedAt": 1627686800,
      "mode": "resource",
      "module": "full_stack",
      "monthly_cost": 0.6746256985802211,
      "monthly_saving": 0.09219667128621589,
      "name": "app_server",
      "path_id": "namespace",
      "provider": "AWS",
      "recommendation_count": 8649719887937091000,
      "resource_id": "arn:aws:s3:::my-bucket",
      "sensitive_attributes": [
        "instance_type"
      ],
      "type": "S3 Bucket"
    },
    {
      "attributes": {
        "ami": "ami-830c94ec",
        "instance_type": "t2.micro"
      },
      "createdAt": 1627590400,
      "drift_attributes": {
        "instance_type": "t2.nano"
      },
      "drift_status": "changed",
      "lastSyncedAt": 1627686800,
      "mode": "resource",
      "module": "full_stack",
      "monthly_cost": 0.6746256985802211,
      "monthly_saving": 0.09219667128621589,
      "name": "app_server",
      "path_id": "namespace",
      "provider": "AWS",
      "recommendation_count": 8649719887937091000,
      "resource_id": "arn:aws:s3:::my-bucket",
      "sensitive_attributes": [
        "instance_type"
      ],
      "type": "S3 Bucket"
    },
    {
      "attributes": {
        "ami": "ami-830c94ec",
        "instance_type": "t2.micro"
      },
      "createdAt": 1627590400,
      "drift_attributes": {
        "instance_type": "t2.nano"
      },
      "drift_status": "changed",
      "lastSyncedAt": 1627686800,
      "mode": "resource",
      "module": "full_stack",
      "monthly_cost": 0.6746256985802211,
      "monthly_saving": 0.09219667128621589,
      "name": "app_server",
      "path_id": "namespace",
      "provider": "AWS",
      "recommendation_count": 8649719887937091000,
      "resource_id": "arn:aws:s3:::my-bucket",
      "sensitive_attributes": [
        "instance_type"
      ],
      "type": "S3 Bucket"
    },
    {
      "attributes": {
        "ami": "ami-830c94ec",
        "instance_type": "t2.micro"
      },
      "createdAt": 1627590400,
      "drift_attributes": {
        "instance_type": "t2.nano"
      },
      "drift_status": "changed",
      "lastSyncedAt": 1627686800,
      "mode": "resource",
      "module": "full_stack",
      "monthly_cost": 0.6746256985802211,
      "monthly_saving": 0.09219667128621589,
      "name": "app_server",
      "path_id": "namespace",
      "provider": "AWS",
      "recommendation_count": 8649719887937091000,
      "resource_id": "arn:aws:s3:::my-bucket",
      "sensitive_attributes": [
        "instance_type"
      ],
      "type": "S3 Bucket"
    }
  ],
  "outputs": [
    {
      "expression": "<+outputs.instance_id>",
      "name": "instance_public_ip",
      "sensitive": true,
      "stack_path": "IaCM/TGOverride/environments/dev/ec2",
      "value": "Deserunt error nobis in corrupti quia odio."
    },
    {
      "expression": "<+outputs.instance_id>",
      "name": "instance_public_ip",
      "sensitive": true,
      "stack_path": "IaCM/TGOverride/environments/dev/ec2",
      "value": "Deserunt error nobis in corrupti quia odio."
    }
  ],
  "resources": [
    {
      "attributes": {
        "ami": "ami-830c94ec",
        "instance_type": "t2.micro"
      },
      "createdAt": 1627590400,
      "drift_attributes": {
        "instance_type": "t2.nano"
      },
      "drift_status": "changed",
      "lastSyncedAt": 1627686800,
      "mode": "resource",
      "module": "full_stack",
      "monthly_cost": 0.6746256985802211,
      "monthly_saving": 0.09219667128621589,
      "name": "app_server",
      "path_id": "namespace",
      "provider": "AWS",
      "recommendation_count": 8649719887937091000,
      "resource_id": "arn:aws:s3:::my-bucket",
      "sensitive_attributes": [
        "instance_type"
      ],
      "type": "S3 Bucket"
    },
    {
      "attributes": {
        "ami": "ami-830c94ec",
        "instance_type": "t2.micro"
      },
      "createdAt": 1627590400,
      "drift_attributes": {
        "instance_type": "t2.nano"
      },
      "drift_status": "changed",
      "lastSyncedAt": 1627686800,
      "mode": "resource",
      "module": "full_stack",
      "monthly_cost": 0.6746256985802211,
      "monthly_saving": 0.09219667128621589,
      "name": "app_server",
      "path_id": "namespace",
      "provider": "AWS",
      "recommendation_count": 8649719887937091000,
      "resource_id": "arn:aws:s3:::my-bucket",
      "sensitive_attributes": [
        "instance_type"
      ],
      "type": "S3 Bucket"
    },
    {
      "attributes": {
        "ami": "ami-830c94ec",
        "instance_type": "t2.micro"
      },
      "createdAt": 1627590400,
      "drift_attributes": {
        "instance_type": "t2.nano"
      },
      "drift_status": "changed",
      "lastSyncedAt": 1627686800,
      "mode": "resource",
      "module": "full_stack",
      "monthly_cost": 0.6746256985802211,
      "monthly_saving": 0.09219667128621589,
      "name": "app_server",
      "path_id": "namespace",
      "provider": "AWS",
      "recommendation_count": 8649719887937091000,
      "resource_id": "arn:aws:s3:::my-bucket",
      "sensitive_attributes": [
        "instance_type"
      ],
      "type": "S3 Bucket"
    },
    {
      "attributes": {
        "ami": "ami-830c94ec",
        "instance_type": "t2.micro"
      },
      "createdAt": 1627590400,
      "drift_attributes": {
        "instance_type": "t2.nano"
      },
      "drift_status": "changed",
      "lastSyncedAt": 1627686800,
      "mode": "resource",
      "module": "full_stack",
      "monthly_cost": 0.6746256985802211,
      "monthly_saving": 0.09219667128621589,
      "name": "app_server",
      "path_id": "namespace",
      "provider": "AWS",
      "recommendation_count": 8649719887937091000,
      "resource_id": "arn:aws:s3:::my-bucket",
      "sensitive_attributes": [
        "instance_type"
      ],
      "type": "S3 Bucket"
    }
  ],
  "stack_outputs": {
    "IaCM/TGOverride/environments/dev/ec2": [
      {
        "name": "instance_id",
        "sensitive": false,
        "stack_path": "IaCM/TGOverride/environments/dev/ec2",
        "value": "i-1234567890abcdef0"
      }
    ]
  },
  "total_resources": 42
}

Get resource

get

Get a single provisioned resource by its IaCM resource ID (resources.id UUID). Returns the same Resource shape as list-resources.

Path parameters
orgstring · min: 1 · max: 128Required

Org is the organisation identifier.

Example: e
projectstring · min: 1 · max: 128Required

Project is the project identifier.

Example: rnw
identifierstring · min: 1 · max: 128Required

Workspace identifier.

Example: 8lr
idstring · min: 1 · max: 36Required

IaCM resource ID (resources.id UUID).

Example: 11111111-1111-1111-1111-111111111111
Header parameters
Harness-Accountstring · min: 1 · max: 128Required

Account is the internal customer account ID.

Example: l2z
Responses
200

OK response.

application/json
createdAtinteger · int64Optional

Timestamp when the resource was created.

Example: 1627590400
drift_statusstring · enumRequired

Indicates if this resource is experiencing drift.

Example: changedPossible values:
lastSyncedAtinteger · int64Optional

Timestamp when the resource was last updated.

Example: 1627686800
modestring · enumRequired

Mode associated with the resource.

Example: resourcePossible values:
modulestringRequired

Module associated with the resource.

Example: full_stack
monthly_costnumber · doubleOptional

Current period cost from CCM (null if no cost data).

Example: 0.11418498928154362
monthly_savingnumber · doubleOptional

Monthly potential saving from CCM (null if no cost data).

Example: 0.9333841350301846
namestringRequired

Name associated with the resource.

Example: app_server
path_idstringRequired

Path associated with the resource. Could be namespace, environment or stack id.

Example: namespace
providerstringRequired

Cloud provider associated with the resource.

Example: AWS
recommendation_countinteger · int64Optional

Number of CCM recommendations for this resource (null if no cost data).

Example: 3080594148715876400
resource_idstringRequired

Unique identifier for the resource from the cloud provider.

Example: arn:aws:s3:::my-bucket
typestringRequired

Type of the provisioned resource.

Example: S3 Bucket
get/api/orgs/{org}/projects/{project}/workspaces/{identifier}/resources/{id}
GET /api/orgs/{org}/projects/{project}/workspaces/{identifier}/resources/{id} HTTP/1.1
Host: localhost:80
Harness-Account: l2z
Accept: */*
{
  "attributes": {
    "ami": "ami-830c94ec",
    "instance_type": "t2.micro"
  },
  "createdAt": 1627590400,
  "drift_attributes": {
    "instance_type": "t2.nano"
  },
  "drift_status": "changed",
  "lastSyncedAt": 1627686800,
  "mode": "resource",
  "module": "full_stack",
  "monthly_cost": 0.5430484459281941,
  "monthly_saving": 0.25187163585491273,
  "name": "app_server",
  "path_id": "namespace",
  "provider": "AWS",
  "recommendation_count": 3536487341731637000,
  "resource_id": "arn:aws:s3:::my-bucket",
  "sensitive_attributes": [
    "instance_type"
  ],
  "type": "S3 Bucket"
}

List resources using selectors

post

List resources for a workspace using selectors. Pagination is optional: when limit and page are omitted (or zero), all matching resources are returned for backward compatibility.

Path parameters
orgstring · min: 1 · max: 128Required

Org is the organisation identifier.

Example: fek
projectstring · min: 1 · max: 128Required

Project is the project identifier.

Example: dvv
identifierstringRequired

Workspace identifier

Example: A voluptatem ad provident minima quibusdam id.
Header parameters
Harness-Accountstring · min: 1 · max: 128Required

Account is the internal customer account ID.

Example: a
Body
limitinteger · int64 · min: 1 · max: 1000Optional

Limit is the number of records to return for a page. When omitted, all records are returned.

Example: 30
pageinteger · int64 · min: 1Optional

Page is the page number to return relative to the page 'limit'. When omitted, all records are returned.

Example: 1
Responses
200

OK response.

application/json
post/api/orgs/{org}/projects/{project}/workspaces/{identifier}/resources/search
POST /api/orgs/{org}/projects/{project}/workspaces/{identifier}/resources/search HTTP/1.1
Host: localhost:80
Harness-Account: a
Content-Type: application/json
Accept: */*
Content-Length: 578

{
  "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"
    },
    {
      "include_conditions": [
        {
          "attribute": "tag.environment",
          "operator": "equals",
          "value": "prod"
        }
      ],
      "path_id": "qa",
      "provider": "aws",
      "resource_type": "aws_instance",
      "search_text": "some text"
    }
  ]
}
{
  "data_sources": [
    {
      "attributes": {
        "ami": "ami-830c94ec",
        "instance_type": "t2.micro"
      },
      "createdAt": 1627590400,
      "drift_attributes": {
        "instance_type": "t2.nano"
      },
      "drift_status": "changed",
      "lastSyncedAt": 1627686800,
      "mode": "resource",
      "module": "full_stack",
      "monthly_cost": 0.6746256985802211,
      "monthly_saving": 0.09219667128621589,
      "name": "app_server",
      "path_id": "namespace",
      "provider": "AWS",
      "recommendation_count": 8649719887937091000,
      "resource_id": "arn:aws:s3:::my-bucket",
      "sensitive_attributes": [
        "instance_type"
      ],
      "type": "S3 Bucket"
    },
    {
      "attributes": {
        "ami": "ami-830c94ec",
        "instance_type": "t2.micro"
      },
      "createdAt": 1627590400,
      "drift_attributes": {
        "instance_type": "t2.nano"
      },
      "drift_status": "changed",
      "lastSyncedAt": 1627686800,
      "mode": "resource",
      "module": "full_stack",
      "monthly_cost": 0.6746256985802211,
      "monthly_saving": 0.09219667128621589,
      "name": "app_server",
      "path_id": "namespace",
      "provider": "AWS",
      "recommendation_count": 8649719887937091000,
      "resource_id": "arn:aws:s3:::my-bucket",
      "sensitive_attributes": [
        "instance_type"
      ],
      "type": "S3 Bucket"
    },
    {
      "attributes": {
        "ami": "ami-830c94ec",
        "instance_type": "t2.micro"
      },
      "createdAt": 1627590400,
      "drift_attributes": {
        "instance_type": "t2.nano"
      },
      "drift_status": "changed",
      "lastSyncedAt": 1627686800,
      "mode": "resource",
      "module": "full_stack",
      "monthly_cost": 0.6746256985802211,
      "monthly_saving": 0.09219667128621589,
      "name": "app_server",
      "path_id": "namespace",
      "provider": "AWS",
      "recommendation_count": 8649719887937091000,
      "resource_id": "arn:aws:s3:::my-bucket",
      "sensitive_attributes": [
        "instance_type"
      ],
      "type": "S3 Bucket"
    },
    {
      "attributes": {
        "ami": "ami-830c94ec",
        "instance_type": "t2.micro"
      },
      "createdAt": 1627590400,
      "drift_attributes": {
        "instance_type": "t2.nano"
      },
      "drift_status": "changed",
      "lastSyncedAt": 1627686800,
      "mode": "resource",
      "module": "full_stack",
      "monthly_cost": 0.6746256985802211,
      "monthly_saving": 0.09219667128621589,
      "name": "app_server",
      "path_id": "namespace",
      "provider": "AWS",
      "recommendation_count": 8649719887937091000,
      "resource_id": "arn:aws:s3:::my-bucket",
      "sensitive_attributes": [
        "instance_type"
      ],
      "type": "S3 Bucket"
    }
  ],
  "outputs": [
    {
      "expression": "<+outputs.instance_id>",
      "name": "instance_public_ip",
      "sensitive": true,
      "stack_path": "IaCM/TGOverride/environments/dev/ec2",
      "value": "Deserunt error nobis in corrupti quia odio."
    },
    {
      "expression": "<+outputs.instance_id>",
      "name": "instance_public_ip",
      "sensitive": true,
      "stack_path": "IaCM/TGOverride/environments/dev/ec2",
      "value": "Deserunt error nobis in corrupti quia odio."
    }
  ],
  "resources": [
    {
      "attributes": {
        "ami": "ami-830c94ec",
        "instance_type": "t2.micro"
      },
      "createdAt": 1627590400,
      "drift_attributes": {
        "instance_type": "t2.nano"
      },
      "drift_status": "changed",
      "lastSyncedAt": 1627686800,
      "mode": "resource",
      "module": "full_stack",
      "monthly_cost": 0.6746256985802211,
      "monthly_saving": 0.09219667128621589,
      "name": "app_server",
      "path_id": "namespace",
      "provider": "AWS",
      "recommendation_count": 8649719887937091000,
      "resource_id": "arn:aws:s3:::my-bucket",
      "sensitive_attributes": [
        "instance_type"
      ],
      "type": "S3 Bucket"
    },
    {
      "attributes": {
        "ami": "ami-830c94ec",
        "instance_type": "t2.micro"
      },
      "createdAt": 1627590400,
      "drift_attributes": {
        "instance_type": "t2.nano"
      },
      "drift_status": "changed",
      "lastSyncedAt": 1627686800,
      "mode": "resource",
      "module": "full_stack",
      "monthly_cost": 0.6746256985802211,
      "monthly_saving": 0.09219667128621589,
      "name": "app_server",
      "path_id": "namespace",
      "provider": "AWS",
      "recommendation_count": 8649719887937091000,
      "resource_id": "arn:aws:s3:::my-bucket",
      "sensitive_attributes": [
        "instance_type"
      ],
      "type": "S3 Bucket"
    },
    {
      "attributes": {
        "ami": "ami-830c94ec",
        "instance_type": "t2.micro"
      },
      "createdAt": 1627590400,
      "drift_attributes": {
        "instance_type": "t2.nano"
      },
      "drift_status": "changed",
      "lastSyncedAt": 1627686800,
      "mode": "resource",
      "module": "full_stack",
      "monthly_cost": 0.6746256985802211,
      "monthly_saving": 0.09219667128621589,
      "name": "app_server",
      "path_id": "namespace",
      "provider": "AWS",
      "recommendation_count": 8649719887937091000,
      "resource_id": "arn:aws:s3:::my-bucket",
      "sensitive_attributes": [
        "instance_type"
      ],
      "type": "S3 Bucket"
    },
    {
      "attributes": {
        "ami": "ami-830c94ec",
        "instance_type": "t2.micro"
      },
      "createdAt": 1627590400,
      "drift_attributes": {
        "instance_type": "t2.nano"
      },
      "drift_status": "changed",
      "lastSyncedAt": 1627686800,
      "mode": "resource",
      "module": "full_stack",
      "monthly_cost": 0.6746256985802211,
      "monthly_saving": 0.09219667128621589,
      "name": "app_server",
      "path_id": "namespace",
      "provider": "AWS",
      "recommendation_count": 8649719887937091000,
      "resource_id": "arn:aws:s3:::my-bucket",
      "sensitive_attributes": [
        "instance_type"
      ],
      "type": "S3 Bucket"
    }
  ],
  "stack_outputs": {
    "IaCM/TGOverride/environments/dev/ec2": [
      {
        "name": "instance_id",
        "sensitive": false,
        "stack_path": "IaCM/TGOverride/environments/dev/ec2",
        "value": "i-1234567890abcdef0"
      }
    ]
  },
  "total_resources": 42
}

Clone workspace

post

Clone the given workspace with new name.

Path parameters
orgstring · min: 1 · max: 128Required

Org is the organisation identifier.

Example: k0l
projectstring · min: 1 · max: 128Required

Project is the project identifier.

Example: fo
workspacestringRequiredExample: Ut at.
Header parameters
Harness-Accountstring · min: 1 · max: 128Required

Account is the internal customer account ID.

Example: p
Body
identifierstring · min: 1 · max: 128Required

Workspace identifier.

Example: lyPattern: ^[A-Za-z_][A-Za-z0-9_-]*$
namestring · min: 1 · max: 128Required

Name is the human readable name for the resource.

Example: resource namePattern: ^[A-Za-z_][A-Za-z0-9_ -]*$
Responses
200

OK response.

application/json

Create-WorkspaceResponseBody result type (default view)

post/api/orgs/{org}/projects/{project}/workspaces/{workspace}/clone
POST /api/orgs/{org}/projects/{project}/workspaces/{workspace}/clone HTTP/1.1
Host: localhost:80
Harness-Account: p
Content-Type: application/json
Accept: */*
Content-Length: 41

{
  "identifier": "2",
  "name": "resource name"
}
{
  "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": "{\n    \"deny\": [\n        \"deployment stage 'deploy' does not have a HarnessApproval step\"\n    ],\n    \"stages_with_approval\": []\n}",
            "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": "{\n    \"deny\": [\n        \"deployment stage 'deploy' does not have a HarnessApproval step\"\n    ],\n    \"stages_with_approval\": []\n}",
            "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": "{\n    \"deny\": [\n        \"deployment stage 'deploy' does not have a HarnessApproval step\"\n    ],\n    \"stages_with_approval\": []\n}",
            "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": "{\n    \"deny\": [\n        \"deployment stage 'deploy' does not have a HarnessApproval step\"\n    ],\n    \"stages_with_approval\": []\n}",
            "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": "{\n    \"deny\": [\n        \"deployment stage 'deploy' does not have a HarnessApproval step\"\n    ],\n    \"stages_with_approval\": []\n}",
            "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": "{\n    \"deny\": [\n        \"deployment stage 'deploy' does not have a HarnessApproval step\"\n    ],\n    \"stages_with_approval\": []\n}",
            "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": "{\n    \"deny\": [\n        \"deployment stage 'deploy' does not have a HarnessApproval step\"\n    ],\n    \"stages_with_approval\": []\n}",
            "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": "{\n    \"deny\": [\n        \"deployment stage 'deploy' does not have a HarnessApproval step\"\n    ],\n    \"stages_with_approval\": []\n}",
            "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"
  }
}

List data

get

List all stored data for a workspace.

Path parameters
orgstring · min: 1 · max: 128Required

Org is the organisation identifier.

Example: l
projectstring · min: 1 · max: 128Required

Project is the project identifier.

Example: d0a
workspacestringRequired

Workspace identifier

Example: Odit non voluptatem in.
Query parameters
pipeline_execution_idstringOptional

Filter by pipeline execution ID

Example: Aperiam laborum dolorem veritatis.
pipeline_stage_idstringOptional

Filter by pipeline execution stage ID

Example: Vero quam voluptas distinctio quod aperiam consequatur.
provisioner_typestringOptional

Filter by provisioner type

Example: Porro doloremque voluptatem dolorem sed est voluptatem.
data_typestringOptional

Filter by data type

Example: Ipsa omnis molestias earum optio fuga consequatur.
stack_pathstringOptional

Filter by stack path

Example: Quia omnis.
limitinteger · int64 · min: 1 · max: 1000Optional

Limit is the number of records to return for a page.

Default: 30Example: 30
pageinteger · int64 · min: 1Optional

Page is the page number to return relative to the page 'limit'.

Default: 1Example: 1
Header parameters
Harness-Accountstring · min: 1 · max: 128Required

Account is the internal customer account ID.

Example: p
Responses
200

OK response.

application/json
get/api/orgs/{org}/projects/{project}/workspaces/{workspace}/data
GET /api/orgs/{org}/projects/{project}/workspaces/{workspace}/data HTTP/1.1
Host: localhost:80
Harness-Account: p
Accept: */*
[
  {
    "account": "jqc",
    "created": 2342968059504325000,
    "data_type": "cdk_diff",
    "id": "dc538c61-de48-4220-958c-5f3c4f983daa",
    "org": "4",
    "pipeline_execution_id": "Sint optio.",
    "pipeline_id": "Aut voluptas omnis praesentium atque itaque praesentium.",
    "pipeline_stage_id": "Illo laborum eum cumque nostrum aut voluptas.",
    "project": "k",
    "provisioner_type": "awscdk",
    "rollback_source_id": "Sunt eos quia sapiente.",
    "stack_path": "Est et officiis sint voluptates dolorum.",
    "stage_id": "Esse tenetur dolore et earum quis.",
    "workspace": "workspace123"
  },
  {
    "account": "jqc",
    "created": 2342968059504325000,
    "data_type": "cdk_diff",
    "id": "dc538c61-de48-4220-958c-5f3c4f983daa",
    "org": "4",
    "pipeline_execution_id": "Sint optio.",
    "pipeline_id": "Aut voluptas omnis praesentium atque itaque praesentium.",
    "pipeline_stage_id": "Illo laborum eum cumque nostrum aut voluptas.",
    "project": "k",
    "provisioner_type": "awscdk",
    "rollback_source_id": "Sunt eos quia sapiente.",
    "stack_path": "Est et officiis sint voluptates dolorum.",
    "stage_id": "Esse tenetur dolore et earum quis.",
    "workspace": "workspace123"
  },
  {
    "account": "jqc",
    "created": 2342968059504325000,
    "data_type": "cdk_diff",
    "id": "dc538c61-de48-4220-958c-5f3c4f983daa",
    "org": "4",
    "pipeline_execution_id": "Sint optio.",
    "pipeline_id": "Aut voluptas omnis praesentium atque itaque praesentium.",
    "pipeline_stage_id": "Illo laborum eum cumque nostrum aut voluptas.",
    "project": "k",
    "provisioner_type": "awscdk",
    "rollback_source_id": "Sunt eos quia sapiente.",
    "stack_path": "Est et officiis sint voluptates dolorum.",
    "stage_id": "Esse tenetur dolore et earum quis.",
    "workspace": "workspace123"
  }
]

Create data

post

Store binary data generated by the provisioner, such as plans and state files.

Path parameters
orgstring · min: 1 · max: 128Required

Org is the organisation identifier.

Example: s0p
projectstring · min: 1 · max: 128Required

Project is the project identifier.

Example: y
workspacestringRequired

Workspace identifier

Example: workspace123
Query parameters
pipeline_idstringRequired

The unique identifier for the associated pipeline

Example: Blanditiis rerum nostrum perferendis sit eligendi.
stage_idstringRequired

The unique identifier for a stage

Example: Ipsam rem neque.
pipeline_execution_idstringRequired

The unique identifier for the associated pipeline execution

Example: Voluptate sit quaerat eum non aut.
pipeline_stage_idstringRequired

The unique identifier for the associated pipeline execution stage

Example: Libero impedit hic eaque aut.
provisioner_typestring · enumRequired

Type of provisioner that created the data

Example: tfPossible values:
data_typestring · enumRequired

Type of data stored

Example: providersPossible values:
policy_actionstringOptional

Policy action used during OPA evaluation

Example: afterTerraformApply
opa_sdk_supportedbooleanOptional

Indicates the plugin supports OPA SDK-based evaluation

Example: true
stack_pathstringOptional

Optional path to the stack module

Example: Adipisci dignissimos totam rerum.
Header parameters
Harness-Accountstring · min: 1 · max: 128Required

Account is the internal customer account ID.

Example: p6d
Content-Lengthinteger · int64Optional

Size in bytes of the data.

Example: 5950394984476017000
Responses
200

OK response.

application/json
idstringRequired

The unique identifier for the data

Example: dc538c61-de48-4220-958c-5f3c4f983daa
policy_evaluation_messagestringOptional

Pre-rendered message included when policy evaluation did not pass

Example: - instance type 'xlarge' is not permitted
policy_evaluation_statusstring · enumOptional

The overall status of policy evaluation (if it occurred) indicating whether it passed

Example: errorPossible values:
post/api/orgs/{org}/projects/{project}/workspaces/{workspace}/data
POST /api/orgs/{org}/projects/{project}/workspaces/{workspace}/data?pipeline_id=Blanditiis+rerum+nostrum+perferendis+sit+eligendi.&stage_id=Ipsam+rem+neque.&pipeline_execution_id=Voluptate+sit+quaerat+eum+non+aut.&pipeline_stage_id=Libero+impedit+hic+eaque+aut.&provisioner_type=tf&data_type=providers HTTP/1.1
Host: localhost:80
Harness-Account: p6d
Accept: */*
{
  "id": "dc538c61-de48-4220-958c-5f3c4f983daa",
  "policy_evaluation": [
    {
      "message": "Labore quas debitis numquam voluptatem et.",
      "policy_id": "Quisquam eos tempore amet aliquid molestias quisquam.",
      "policy_name": "Eum accusantium soluta ab non fugiat.",
      "policy_set_id": "Aut nihil quas est aspernatur illo qui.",
      "policy_set_name": "Autem dolorum itaque.",
      "policy_status": "Esse porro alias dolorem."
    },
    {
      "message": "Labore quas debitis numquam voluptatem et.",
      "policy_id": "Quisquam eos tempore amet aliquid molestias quisquam.",
      "policy_name": "Eum accusantium soluta ab non fugiat.",
      "policy_set_id": "Aut nihil quas est aspernatur illo qui.",
      "policy_set_name": "Autem dolorum itaque.",
      "policy_status": "Esse porro alias dolorem."
    }
  ],
  "policy_evaluation_message": "- instance type 'xlarge' is not permitted",
  "policy_evaluation_status": "error"
}

Show data

get

Get binary data generated by the provisioner, such as plans and state files.

Path parameters
orgstring · min: 1 · max: 128Required

Org is the organisation identifier.

Example: qg
projectstring · min: 1 · max: 128Required

Project is the project identifier.

Example: m
workspacestringRequired

Workspace is the resource workspace this variable is associated with.

Example: Delectus recusandae praesentium eos et perferendis ut.
idstringRequired

The unique identifier for the data

Example: dc538c61-de48-4220-958c-5f3c4f983daa
Header parameters
Harness-Accountstring · min: 1 · max: 128Required

Account is the internal customer account ID.

Example: 9z
Responses
200

OK response.

application/json
string · binaryOptional
get/api/orgs/{org}/projects/{project}/workspaces/{workspace}/data/{id}
GET /api/orgs/{org}/projects/{project}/workspaces/{workspace}/data/{id} HTTP/1.1
Host: localhost:80
Harness-Account: 9z
Accept: */*
binary

Evaluate data

get

Evaluate policy against previously stored data, such as plans and state files.

Path parameters
orgstring · min: 1 · max: 128Required

Org is the organisation identifier.

Example: y8d
projectstring · min: 1 · max: 128Required

Project is the project identifier.

Example: w
workspacestringRequired

Workspace is the resource workspace this variable is associated with.

Example: Recusandae minima qui.
idstringRequired

The unique identifier for the data

Example: dc538c61-de48-4220-958c-5f3c4f983daa
Query parameters
pipeline_execution_idstringOptional

Pipeline execution associated with this evaluation

Example: Qui vitae at nihil velit ad.
policy_actionstringRequired

Policy action used during OPA evaluation

Example: afterTerraformApply
Header parameters
Harness-Accountstring · min: 1 · max: 128Required

Account is the internal customer account ID.

Example: c20
Responses
200

OK response.

application/json
idstringRequired

The unique identifier for the data

Example: dc538c61-de48-4220-958c-5f3c4f983daa
policy_evaluation_messagestringOptional

Pre-rendered message included when policy evaluation did not pass

Example: - instance type 'xlarge' is not permitted
policy_evaluation_statusstring · enumOptional

The overall status of policy evaluation (if it occurred) indicating whether it passed

Example: errorPossible values:
get/api/orgs/{org}/projects/{project}/workspaces/{workspace}/data/{id}/evaluate-policy
GET /api/orgs/{org}/projects/{project}/workspaces/{workspace}/data/{id}/evaluate-policy?policy_action=afterTerraformApply HTTP/1.1
Host: localhost:80
Harness-Account: c20
Accept: */*
{
  "id": "dc538c61-de48-4220-958c-5f3c4f983daa",
  "policy_evaluation": [
    {
      "message": "Labore quas debitis numquam voluptatem et.",
      "policy_id": "Quisquam eos tempore amet aliquid molestias quisquam.",
      "policy_name": "Eum accusantium soluta ab non fugiat.",
      "policy_set_id": "Aut nihil quas est aspernatur illo qui.",
      "policy_set_name": "Autem dolorum itaque.",
      "policy_status": "Esse porro alias dolorem."
    },
    {
      "message": "Labore quas debitis numquam voluptatem et.",
      "policy_id": "Quisquam eos tempore amet aliquid molestias quisquam.",
      "policy_name": "Eum accusantium soluta ab non fugiat.",
      "policy_set_id": "Aut nihil quas est aspernatur illo qui.",
      "policy_set_name": "Autem dolorum itaque.",
      "policy_status": "Esse porro alias dolorem."
    },
    {
      "message": "Labore quas debitis numquam voluptatem et.",
      "policy_id": "Quisquam eos tempore amet aliquid molestias quisquam.",
      "policy_name": "Eum accusantium soluta ab non fugiat.",
      "policy_set_id": "Aut nihil quas est aspernatur illo qui.",
      "policy_set_name": "Autem dolorum itaque.",
      "policy_status": "Esse porro alias dolorem."
    }
  ],
  "policy_evaluation_message": "- instance type 'xlarge' is not permitted",
  "policy_evaluation_status": "error"
}

Upload dependency graph data

post

Upload dependency graph for an existing plan file.

Path parameters
orgstring · min: 1 · max: 128Required

Org is the organisation identifier.

Example: 3di
projectstring · min: 1 · max: 128Required

Project is the project identifier.

Example: 9
workspacestringRequired

Workspace identifier

Example: workspace123
Query parameters
pipeline_idstringRequired

The unique identifier for the associated pipeline

Example: Quasi omnis.
stage_idstringRequired

The unique identifier for a stage

Example: Voluptas nostrum harum.
pipeline_execution_idstringRequired

The unique identifier for the associated pipeline execution

Example: Est omnis excepturi magnam nihil.
pipeline_stage_idstringRequired

The unique identifier for the associated pipeline execution stage

Example: Vitae sit maxime esse quaerat.
provisioner_typestring · enumRequired

Type of provisioner that created the data

Example: awscdkPossible values:
data_typestring · enumRequired

Type of data stored

Example: cost_breakdownPossible values:
stack_pathstringOptional

Optional path to the stack module

Example: Alias voluptas quos.
Header parameters
Harness-Accountstring · min: 1 · max: 128Required

Account is the internal customer account ID.

Example: 2
Content-Lengthinteger · int64Optional

Size in bytes of the graph data.

Example: 1875150634884086800
Responses
200

OK response.

application/json
idstringRequired

The unique identifier for the data

Example: dc538c61-de48-4220-958c-5f3c4f983daa
policy_evaluation_messagestringOptional

Pre-rendered message included when policy evaluation did not pass

Example: - instance type 'xlarge' is not permitted
policy_evaluation_statusstring · enumOptional

The overall status of policy evaluation (if it occurred) indicating whether it passed

Example: errorPossible values:
post/api/orgs/{org}/projects/{project}/workspaces/{workspace}/dependency-graph
POST /api/orgs/{org}/projects/{project}/workspaces/{workspace}/dependency-graph?pipeline_id=Quasi+omnis.&stage_id=Voluptas+nostrum+harum.&pipeline_execution_id=Est+omnis+excepturi+magnam+nihil.&pipeline_stage_id=Vitae+sit+maxime+esse+quaerat.&provisioner_type=awscdk&data_type=cost_breakdown HTTP/1.1
Host: localhost:80
Harness-Account: 2
Accept: */*
{
  "id": "dc538c61-de48-4220-958c-5f3c4f983daa",
  "policy_evaluation": [
    {
      "message": "Labore quas debitis numquam voluptatem et.",
      "policy_id": "Quisquam eos tempore amet aliquid molestias quisquam.",
      "policy_name": "Eum accusantium soluta ab non fugiat.",
      "policy_set_id": "Aut nihil quas est aspernatur illo qui.",
      "policy_set_name": "Autem dolorum itaque.",
      "policy_status": "Esse porro alias dolorem."
    },
    {
      "message": "Labore quas debitis numquam voluptatem et.",
      "policy_id": "Quisquam eos tempore amet aliquid molestias quisquam.",
      "policy_name": "Eum accusantium soluta ab non fugiat.",
      "policy_set_id": "Aut nihil quas est aspernatur illo qui.",
      "policy_set_name": "Autem dolorum itaque.",
      "policy_status": "Esse porro alias dolorem."
    }
  ],
  "policy_evaluation_message": "- instance type 'xlarge' is not permitted",
  "policy_evaluation_status": "error"
}

Get drift automation status for a workspace

get

Returns whether drift automation is enabled and related metadata.

Path parameters
orgstring · min: 1 · max: 128Required

Org is the organisation identifier.

Example: k
projectstring · min: 1 · max: 128Required

Project is the project identifier.

Example: zly
workspacestringRequired

Workspace identifier

Example: Aut voluptatem provident placeat et.
Query parameters
provisionerstringOptional

Provisioner key (defaults to opentofu when omitted)

Example: Cumque quia laboriosam.
Header parameters
Harness-Accountstring · min: 1 · max: 128Required

Account is the internal customer account ID.

Example: 4vn
Responses
200

OK response.

application/json
enabledbooleanRequiredExample: true
pipeline_idstringOptionalExample: Voluptas esse est laudantium placeat assumenda praesentium.
run_everyinteger · int64Optional

Repeat interval; set when schedule is configured

Example: 4184236585078549500
run_every_unitstring · enumOptional

hours or days

Example: minutesPossible values:
trigger_idstringOptionalExample: Culpa laudantium.
get/api/orgs/{org}/projects/{project}/workspaces/{workspace}/drift-config
GET /api/orgs/{org}/projects/{project}/workspaces/{workspace}/drift-config HTTP/1.1
Host: localhost:80
Harness-Account: 4vn
Accept: */*
{
  "enabled": false,
  "pipeline_id": "Placeat in ut optio beatae.",
  "run_every": 8270720439580752000,
  "run_every_unit": "hours",
  "trigger_id": "Quia aliquid eum voluptatem eum praesentium."
}

Enable drift automation for a workspace

put

Configures drift detection pipeline and schedule for the workspace.

Path parameters
orgstring · min: 1 · max: 128Required

Org is the organisation identifier.

Example: 20n
projectstring · min: 1 · max: 128Required

Project is the project identifier.

Example: cuc
workspacestringRequired

Workspace identifier

Example: Repudiandae id repudiandae temporibus impedit.
Header parameters
Harness-Accountstring · min: 1 · max: 128Required

Account is the internal customer account ID.

Example: 14
Body
pipeline_idstringRequired

Pipeline to run for drift detection

Example: Sint dolor repudiandae cupiditate enim vero.
provisionerstringOptional

Provisioner key (defaults to opentofu when omitted)

Example: Est veritatis possimus voluptas.
run_everyinteger · int64Required

Run drift detection every N hours or N days (see run_every_unit)

Example: 5886057759804457000
run_every_unitstring · enumRequired

hours or days

Example: minutesPossible values:
Responses
200

OK response.

application/json
statusstringRequired

Outcome message

Example: Vel fugit praesentium quia repudiandae laudantium.
put/api/orgs/{org}/projects/{project}/workspaces/{workspace}/drift-config
PUT /api/orgs/{org}/projects/{project}/workspaces/{workspace}/drift-config HTTP/1.1
Host: localhost:80
Harness-Account: 14
Content-Type: application/json
Accept: */*
Content-Length: 117

{
  "pipeline_id": "Qui est.",
  "provisioner": "Nam cupiditate.",
  "run_every": 3273270546498937000,
  "run_every_unit": "seconds"
}
{
  "status": "Officiis labore explicabo repellendus."
}

Disable drift automation for a workspace

delete

Removes drift scheduling and related configuration for the workspace.

Path parameters
orgstring · min: 1 · max: 128Required

Org is the organisation identifier.

Example: q9r
projectstring · min: 1 · max: 128Required

Project is the project identifier.

Example: ri
workspacestringRequired

Workspace identifier

Example: Rem accusantium sit consequuntur aperiam.
Query parameters
provisionerstringOptional

Provisioner key (defaults to opentofu when omitted)

Example: Similique est.
Header parameters
Harness-Accountstring · min: 1 · max: 128Required

Account is the internal customer account ID.

Example: x
Responses
200

OK response.

application/json
statusstringRequired

Outcome message

Example: Dolor repellendus.
delete/api/orgs/{org}/projects/{project}/workspaces/{workspace}/drift-config
DELETE /api/orgs/{org}/projects/{project}/workspaces/{workspace}/drift-config HTTP/1.1
Host: localhost:80
Harness-Account: x
Accept: */*
{
  "status": "Laudantium aliquid id vitae assumenda nulla laudantium."
}

Get ephemeral TTL status for a workspace

get

Returns whether ephemeral TTL is enabled and related metadata.

Path parameters
orgstring · min: 1 · max: 128Required

Org is the organisation identifier.

Example: l
projectstring · min: 1 · max: 128Required

Project is the project identifier.

Example: mp3
workspacestringRequired

Workspace identifier

Example: Ut recusandae temporibus.
Query parameters
provisionerstringOptional

Provisioner key (defaults to opentofu when omitted)

Example: Voluptas dolores voluptate.
Header parameters
Harness-Accountstring · min: 1 · max: 128Required

Account is the internal customer account ID.

Example: 0r
Responses
200

OK response.

application/json
delete_atstringOptional

Scheduled deletion timestamp (ISO 8601)

Example: Reiciendis perspiciatis qui vel voluptatum sed ullam.
delete_delay_unitstring · enumOptional

Configured delete delay unit (hours or days)

Example: minutesPossible values:
delete_delay_valueinteger · int64Optional

Configured delete delay value (when delete_workspace is true)

Example: 2706128422877483500
delete_on_datestringOptional

Configured delete date (YYYY-MM-DD) when schedule uses a specific date

Example: Nulla aspernatur ut.
delete_workspacebooleanOptional

Whether workspace will be deleted after destroy

Example: false
destroy_atstringOptional

Scheduled destruction timestamp (ISO 8601)

Example: Eaque qui.
destroy_on_datestringOptional

Configured destroy date (YYYY-MM-DD) when schedule uses a specific date

Example: Distinctio non sint modi aut.
enabledbooleanRequiredExample: false
pipeline_idstringOptionalExample: Totam aut neque illo consequatur soluta qui.
provisionerstringOptional

Provisioner this configuration applies to

Example: Dolor quam similique eos est.
sourcestring · enumOptional

Origin of the configuration: 'workspace', 'project', or 'disabled'

Example: disabledPossible values:
trigger_idstringOptional

Harness trigger ID for the destroy schedule

Example: Quam nostrum perferendis.
ttl_unitstring · enumOptional

Configured destroy delay unit (hours or days)

Example: hoursPossible values:
ttl_valueinteger · int64Optional

Configured destroy delay value (when schedule uses delay)

Example: 7326045953744029000
get/api/orgs/{org}/projects/{project}/workspaces/{workspace}/ephemeral-config
GET /api/orgs/{org}/projects/{project}/workspaces/{workspace}/ephemeral-config HTTP/1.1
Host: localhost:80
Harness-Account: 0r
Accept: */*
{
  "delete_at": "Adipisci consequatur.",
  "delete_delay_unit": "days",
  "delete_delay_value": 2116444084967232500,
  "delete_on_date": "Id voluptatibus iusto.",
  "delete_workspace": true,
  "destroy_at": "Voluptatem officiis.",
  "destroy_on_date": "Necessitatibus non qui.",
  "enabled": true,
  "pipeline_id": "Temporibus sit doloremque non non qui eaque.",
  "provisioner": "Et minus non.",
  "source": "project",
  "trigger_id": "Accusantium ipsa rem.",
  "ttl_unit": "seconds",
  "ttl_value": 3227786807564693500
}

Enable ephemeral TTL for a workspace

put

Configures time-to-live settings to automatically destroy infrastructure and optionally delete the workspace.

Path parameters
orgstring · min: 1 · max: 128Required

Org is the organisation identifier.

Example: ue8
projectstring · min: 1 · max: 128Required

Project is the project identifier.

Example: 6us
workspacestringRequired

Workspace identifier

Example: Ad qui aspernatur ipsam sed est officiis.
Header parameters
Harness-Accountstring · min: 1 · max: 128Required

Account is the internal customer account ID.

Example: h
Body
delete_delay_unitstring · enumOptional

Unit for delete delay

Example: hoursPossible values:
delete_delay_valueinteger · int64Optional

Delete workspace after N hours or days from now

Example: 8313731668352711000
delete_on_datestringOptional

Specific date to delete workspace (ISO 8601 format, e.g. 2026-09-02)

Example: Qui delectus aut.
delete_workspacebooleanOptional

Whether to delete the workspace record after infrastructure is destroyed

Example: true
destroy_delay_unitstring · enumOptional

Unit for destroy delay

Example: minutesPossible values:
destroy_delay_valueinteger · int64Optional

Destroy infrastructure after N hours or days from now

Example: 7049556480123648000
destroy_on_datestringOptional

Specific date to destroy infrastructure (ISO 8601 format, e.g. 2026-08-24)

Example: Optio quidem recusandae nam eaque tenetur.
pipeline_idstringRequired

Pipeline to run for destroying infrastructure

Example: Aut quas aut commodi accusamus.
provisionerstringOptional

Provisioner key (defaults to opentofu when omitted)

Example: Occaecati placeat ut.
Responses
200

OK response.

application/json
delete_atstringOptional

Computed delete timestamp (ISO 8601), empty if delete_workspace is false

Example: Quis et aut.
destroy_atstringOptional

Computed destroy timestamp (ISO 8601)

Example: Optio inventore.
statusstringRequired

Outcome message

Example: Soluta tenetur.
put/api/orgs/{org}/projects/{project}/workspaces/{workspace}/ephemeral-config
PUT /api/orgs/{org}/projects/{project}/workspaces/{workspace}/ephemeral-config HTTP/1.1
Host: localhost:80
Harness-Account: h
Content-Type: application/json
Accept: */*
Content-Length: 386

{
  "delete_delay_unit": "seconds",
  "delete_delay_value": 3451809659308056600,
  "delete_on_date": "Ipsum provident perspiciatis.",
  "delete_workspace": false,
  "destroy_delay_unit": "seconds",
  "destroy_delay_value": 6188438809253081000,
  "destroy_on_date": "Molestias porro corporis nisi laborum sit.",
  "pipeline_id": "Velit commodi ut quia nesciunt.",
  "provisioner": "Doloribus illum qui vel qui doloremque."
}
{
  "delete_at": "Voluptas temporibus veniam aut velit et laudantium.",
  "destroy_at": "Voluptatem sed in impedit vel qui.",
  "status": "Vel quo suscipit qui sed."
}

Disable ephemeral TTL for a workspace

delete

Removes ephemeral scheduling and related configuration for the workspace.

Path parameters
orgstring · min: 1 · max: 128Required

Org is the organisation identifier.

Example: g
projectstring · min: 1 · max: 128Required

Project is the project identifier.

Example: e
workspacestringRequired

Workspace identifier

Example: Libero porro omnis deserunt consequatur non.
Query parameters
provisionerstringOptional

Provisioner key (defaults to opentofu when omitted)

Example: Ut repellat et ut praesentium fugit.
Header parameters
Harness-Accountstring · min: 1 · max: 128Required

Account is the internal customer account ID.

Example: h9x
Responses
200

OK response.

application/json
statusstringRequired

Outcome message

Example: Fugit ducimus reiciendis eum.
delete/api/orgs/{org}/projects/{project}/workspaces/{workspace}/ephemeral-config
DELETE /api/orgs/{org}/projects/{project}/workspaces/{workspace}/ephemeral-config HTTP/1.1
Host: localhost:80
Harness-Account: h9x
Accept: */*
{
  "status": "Quae dolores velit temporibus aut sed praesentium."
}

Send event

post

Store binary data generated by the provisioner, such as plans and state files.

Path parameters
orgstring · min: 1 · max: 128Required

Org is the organisation identifier.

Example: 5ed
projectstring · min: 1 · max: 128Required

Project is the project identifier.

Example: bm
workspacestring · min: 1 · max: 1024Required

Workspace associated with this event

Example: 92
Header parameters
Harness-Accountstring · min: 1 · max: 128Required

Account is the internal customer account ID.

Example: 4
Body
event_typestring · enumRequired

The type of event that occurred

Example: apply_neededPossible values:
pipeline_execution_idstringOptional

Deprecated: use metadata instead

Default: ""Example: Beatae sed numquam molestiae labore ullam rem.
pipeline_stage_idstringOptional

Deprecated: use metadata instead

Default: ""Example: Rem in incidunt quia sed.
Responses
200

OK response.

No content

post/api/orgs/{org}/projects/{project}/workspaces/{workspace}/events
POST /api/orgs/{org}/projects/{project}/workspaces/{workspace}/events HTTP/1.1
Host: localhost:80
Harness-Account: 4
Content-Type: application/json
Accept: */*
Content-Length: 10264

{
  "data": {
    "Autem velit.": "Labore est totam voluptas.",
    "Distinctio iste adipisci et recusandae.": "Ad enim quis fuga.",
    "Ipsum dignissimos.": "Ut delectus."
  },
  "event_type": "destroying",
  "metadata": {
    "PlannedChangesCount": 6287286051821949000,
    "activity_status": "success",
    "activity_type": "apply",
    "cost_breakdown_uuid": "Tempora sapiente nemo dolor voluptatem quia labore.",
    "cost_currency": "Neque dicta quasi quia omnis nobis tempore.",
    "cost_diff_total_monthly": "Architecto quia ut ratione earum impedit sed.",
    "cost_diff_uuid": "Adipisci odio.",
    "cost_past_total_monthly": "Vitae perferendis incidunt aut assumenda et.",
    "cost_total_monthly": "Ea quia.",
    "cost_total_monthly_percentage_change": "Quisquam enim rem similique.",
    "data_length": 4911400943199001000,
    "drift_counts": {
      "added": 2737275095070377000,
      "changed": 3189160904069314600,
      "deleted": 4609501253999804000,
      "imported": 8048488091296873000,
      "removed": 591961175117043600,
      "unchanged": 6176175569340644000
    },
    "enable_solutions_factory": false,
    "git_branch": "Dicta voluptas tempora sit.",
    "git_commit_message": "Dolorem et adipisci.",
    "git_commit_sha": "Labore et nisi perferendis accusantium a eum.",
    "git_repo": "Beatae non veniam beatae officia.",
    "modules_uuid": "Facilis sunt.",
    "output_counts": {
      "added": 2737275095070377000,
      "changed": 3189160904069314600,
      "deleted": 4609501253999804000,
      "imported": 8048488091296873000,
      "removed": 591961175117043600,
      "unchanged": 6176175569340644000
    },
    "pipeline": "Aliquid placeat beatae hic.",
    "pipeline_execution_id": "Magnam rerum est ducimus qui earum.",
    "pipeline_execution_number": "Et nobis quod ut necessitatibus deserunt qui.",
    "pipeline_name": "Sequi consequatur veritatis aut adipisci temporibus.",
    "pipeline_stage_id": "Ex inventore numquam recusandae et.",
    "plan_uuid": "Eos dolorem.",
    "providers_uuid": "Porro tempora.",
    "provisioner": "Fugiat temporibus laudantium debitis.",
    "provisioner_version": "Repellendus modi eum voluptas ut animi.",
    "resource_counts": {
      "added": 2737275095070377000,
      "changed": 3189160904069314600,
      "deleted": 4609501253999804000,
      "imported": 8048488091296873000,
      "removed": 591961175117043600,
      "unchanged": 6176175569340644000
    },
    "rollback_reason": "Neque illum quod error consequatur cumque nihil.",
    "rollback_source_id": "Deleniti numquam et ea unde ut illo.",
    "stacks": [
      {
        "assets_uuid": "Quos enim ut.",
        "drift_counts": {
          "added": 2737275095070377000,
          "changed": 3189160904069314600,
          "deleted": 4609501253999804000,
          "imported": 8048488091296873000,
          "removed": 591961175117043600,
          "unchanged": 6176175569340644000
        },
        "drift_uuid": "Cum rerum iste qui qui commodi.",
        "error_message": "Quisquam animi non reiciendis sit deserunt.",
        "manifest_uuid": "Eligendi sint minima.",
        "resource_counts": {
          "added": 2737275095070377000,
          "changed": 3189160904069314600,
          "deleted": 4609501253999804000,
          "imported": 8048488091296873000,
          "removed": 591961175117043600,
          "unchanged": 6176175569340644000
        },
        "stack_name": "Enim esse nam cupiditate consequatur maiores nemo.",
        "stack_outputs": {
          "Dolorem facere laboriosam et.": "Eaque accusantium ea quo quae unde.",
          "Laudantium quibusdam voluptatem illum rerum voluptatem non.": "Fuga ipsum.",
          "Sed saepe.": "Laborum eos magnam sed et et."
        },
        "stack_path": "Error nisi sunt laudantium voluptatem earum.",
        "status": "success",
        "template_uuid": "Odit et sed est officia maxime eum.",
        "tree_uuid": "Quisquam non magni ut velit."
      },
      {
        "assets_uuid": "Quos enim ut.",
        "drift_counts": {
          "added": 2737275095070377000,
          "changed": 3189160904069314600,
          "deleted": 4609501253999804000,
          "imported": 8048488091296873000,
          "removed": 591961175117043600,
          "unchanged": 6176175569340644000
        },
        "drift_uuid": "Cum rerum iste qui qui commodi.",
        "error_message": "Quisquam animi non reiciendis sit deserunt.",
        "manifest_uuid": "Eligendi sint minima.",
        "resource_counts": {
          "added": 2737275095070377000,
          "changed": 3189160904069314600,
          "deleted": 4609501253999804000,
          "imported": 8048488091296873000,
          "removed": 591961175117043600,
          "unchanged": 6176175569340644000
        },
        "stack_name": "Enim esse nam cupiditate consequatur maiores nemo.",
        "stack_outputs": {
          "Dolorem facere laboriosam et.": "Eaque accusantium ea quo quae unde.",
          "Laudantium quibusdam voluptatem illum rerum voluptatem non.": "Fuga ipsum.",
          "Sed saepe.": "Laborum eos magnam sed et et."
        },
        "stack_path": "Error nisi sunt laudantium voluptatem earum.",
        "status": "success",
        "template_uuid": "Odit et sed est officia maxime eum.",
        "tree_uuid": "Quisquam non magni ut velit."
      },
      {
        "assets_uuid": "Quos enim ut.",
        "drift_counts": {
          "added": 2737275095070377000,
          "changed": 3189160904069314600,
          "deleted": 4609501253999804000,
          "imported": 8048488091296873000,
          "removed": 591961175117043600,
          "unchanged": 6176175569340644000
        },
        "drift_uuid": "Cum rerum iste qui qui commodi.",
        "error_message": "Quisquam animi non reiciendis sit deserunt.",
        "manifest_uuid": "Eligendi sint minima.",
        "resource_counts": {
          "added": 2737275095070377000,
          "changed": 3189160904069314600,
          "deleted": 4609501253999804000,
          "imported": 8048488091296873000,
          "removed": 591961175117043600,
          "unchanged": 6176175569340644000
        },
        "stack_name": "Enim esse nam cupiditate consequatur maiores nemo.",
        "stack_outputs": {
          "Dolorem facere laboriosam et.": "Eaque accusantium ea quo quae unde.",
          "Laudantium quibusdam voluptatem illum rerum voluptatem non.": "Fuga ipsum.",
          "Sed saepe.": "Laborum eos magnam sed et et."
        },
        "stack_path": "Error nisi sunt laudantium voluptatem earum.",
        "status": "success",
        "template_uuid": "Odit et sed est officia maxime eum.",
        "tree_uuid": "Quisquam non magni ut velit."
      },
      {
        "assets_uuid": "Quos enim ut.",
        "drift_counts": {
          "added": 2737275095070377000,
          "changed": 3189160904069314600,
          "deleted": 4609501253999804000,
          "imported": 8048488091296873000,
          "removed": 591961175117043600,
          "unchanged": 6176175569340644000
        },
        "drift_uuid": "Cum rerum iste qui qui commodi.",
        "error_message": "Quisquam animi non reiciendis sit deserunt.",
        "manifest_uuid": "Eligendi sint minima.",
        "resource_counts": {
          "added": 2737275095070377000,
          "changed": 3189160904069314600,
          "deleted": 4609501253999804000,
          "imported": 8048488091296873000,
          "removed": 591961175117043600,
          "unchanged": 6176175569340644000
        },
        "stack_name": "Enim esse nam cupiditate consequatur maiores nemo.",
        "stack_outputs": {
          "Dolorem facere laboriosam et.": "Eaque accusantium ea quo quae unde.",
          "Laudantium quibusdam voluptatem illum rerum voluptatem non.": "Fuga ipsum.",
          "Sed saepe.": "Laborum eos magnam sed et et."
        },
        "stack_path": "Error nisi sunt laudantium voluptatem earum.",
        "status": "success",
        "template_uuid": "Odit et sed est officia maxime eum.",
        "tree_uuid": "Quisquam non magni ut velit."
      }
    ],
    "state_checksum": "Minima nisi qui aspernatur voluptatem voluptate est.",
    "state_uuid": "Minima placeat provident maiores odio officia.",
    "terragrunt_details": [
      {
        "cost_breakdown_uuid": "Repellat libero expedita non nemo veritatis.",
        "cost_currency": "Accusamus laborum voluptatem quo iusto dolores.",
        "cost_diff_total_monthly": "Iure similique est.",
        "cost_diff_uuid": "Odio autem possimus excepturi.",
        "cost_past_total_monthly": "Quisquam dolor tempora exercitationem facilis.",
        "cost_total_monthly": "Vel cum dolorum atque cumque.",
        "cost_total_monthly_percentage_change": "Cumque veniam.",
        "drift_counts": {
          "added": 2737275095070377000,
          "changed": 3189160904069314600,
          "deleted": 4609501253999804000,
          "imported": 8048488091296873000,
          "removed": 591961175117043600,
          "unchanged": 6176175569340644000
        },
        "output_counts": {
          "added": 2737275095070377000,
          "changed": 3189160904069314600,
          "deleted": 4609501253999804000,
          "imported": 8048488091296873000,
          "removed": 591961175117043600,
          "unchanged": 6176175569340644000
        },
        "path_id": "Maiores excepturi facilis reprehenderit cupiditate dicta.",
        "resource_counts": {
          "added": 2737275095070377000,
          "changed": 3189160904069314600,
          "deleted": 4609501253999804000,
          "imported": 8048488091296873000,
          "removed": 591961175117043600,
          "unchanged": 6176175569340644000
        },
        "state_file_link": "Ea voluptas minima pariatur laudantium.",
        "status": "Architecto quis enim numquam pariatur."
      },
      {
        "cost_breakdown_uuid": "Repellat libero expedita non nemo veritatis.",
        "cost_currency": "Accusamus laborum voluptatem quo iusto dolores.",
        "cost_diff_total_monthly": "Iure similique est.",
        "cost_diff_uuid": "Odio autem possimus excepturi.",
        "cost_past_total_monthly": "Quisquam dolor tempora exercitationem facilis.",
        "cost_total_monthly": "Vel cum dolorum atque cumque.",
        "cost_total_monthly_percentage_change": "Cumque veniam.",
        "drift_counts": {
          "added": 2737275095070377000,
          "changed": 3189160904069314600,
          "deleted": 4609501253999804000,
          "imported": 8048488091296873000,
          "removed": 591961175117043600,
          "unchanged": 6176175569340644000
        },
        "output_counts": {
          "added": 2737275095070377000,
          "changed": 3189160904069314600,
          "deleted": 4609501253999804000,
          "imported": 8048488091296873000,
          "removed": 591961175117043600,
          "unchanged": 6176175569340644000
        },
        "path_id": "Maiores excepturi facilis reprehenderit cupiditate dicta.",
        "resource_counts": {
          "added": 2737275095070377000,
          "changed": 3189160904069314600,
          "deleted": 4609501253999804000,
          "imported": 8048488091296873000,
          "removed": 591961175117043600,
          "unchanged": 6176175569340644000
        },
        "state_file_link": "Ea voluptas minima pariatur laudantium.",
        "status": "Architecto quis enim numquam pariatur."
      },
      {
        "cost_breakdown_uuid": "Repellat libero expedita non nemo veritatis.",
        "cost_currency": "Accusamus laborum voluptatem quo iusto dolores.",
        "cost_diff_total_monthly": "Iure similique est.",
        "cost_diff_uuid": "Odio autem possimus excepturi.",
        "cost_past_total_monthly": "Quisquam dolor tempora exercitationem facilis.",
        "cost_total_monthly": "Vel cum dolorum atque cumque.",
        "cost_total_monthly_percentage_change": "Cumque veniam.",
        "drift_counts": {
          "added": 2737275095070377000,
          "changed": 3189160904069314600,
          "deleted": 4609501253999804000,
          "imported": 8048488091296873000,
          "removed": 591961175117043600,
          "unchanged": 6176175569340644000
        },
        "output_counts": {
          "added": 2737275095070377000,
          "changed": 3189160904069314600,
          "deleted": 4609501253999804000,
          "imported": 8048488091296873000,
          "removed": 591961175117043600,
          "unchanged": 6176175569340644000
        },
        "path_id": "Maiores excepturi facilis reprehenderit cupiditate dicta.",
        "resource_counts": {
          "added": 2737275095070377000,
          "changed": 3189160904069314600,
          "deleted": 4609501253999804000,
          "imported": 8048488091296873000,
          "removed": 591961175117043600,
          "unchanged": 6176175569340644000
        },
        "state_file_link": "Ea voluptas minima pariatur laudantium.",
        "status": "Architecto quis enim numquam pariatur."
      }
    ],
    "trigger": {
      "Beatae et consequatur.": "Et laborum."
    }
  },
  "pipeline_execution_id": "Suscipit voluptatem aut fuga et aliquid.",
  "pipeline_stage_id": "Voluptatem nemo et exercitationem eveniet."
}

No content

List pipelines

get

List the pipelines where the workspace is been used

Path parameters
orgstring · min: 1 · max: 128Required

Org is the organisation identifier.

Example: qca
projectstring · min: 1 · max: 128Required

Project is the project identifier.

Example: j
workspacestringRequired

Workspace identifier

Example: Qui est quo odit a quibusdam voluptas.
Query parameters
limitinteger · int64 · min: 1 · max: 1000Optional

Limit is the number of records to return for a page.

Default: 30Example: 30
pageinteger · int64 · min: 1Optional

Page is the page number to return relative to the page 'limit'.

Default: 1Example: 1
Header parameters
Harness-Accountstring · min: 1 · max: 128Required

Account is the internal customer account ID.

Example: uo
Responses
200

OK response.

application/json
get/api/orgs/{org}/projects/{project}/workspaces/{workspace}/pipelines
GET /api/orgs/{org}/projects/{project}/workspaces/{workspace}/pipelines HTTP/1.1
Host: localhost:80
Harness-Account: uo
Accept: */*
{
  "account": "48p",
  "org": "3qi",
  "pipelines": [
    "Sit dolore quia.",
    "Est a sint dolores autem et.",
    "Tenetur occaecati aut error dolores neque."
  ],
  "project": "i"
}

Create remote execution

post

Create a remote execution for a workspace.

Path parameters
orgstring · min: 1 · max: 128Required

Org is the organisation identifier.

Example: g
projectstring · min: 1 · max: 128Required

Project is the project identifier.

Example: 66d
workspacestringRequired

The workspace associated with the remote execution.

Example: Ut quaerat id voluptatibus laborum provident facilis.
Header parameters
Harness-Accountstring · min: 1 · max: 128Required

Account is the internal customer account ID.

Example: e5s
Body
Responses
201

Created response.

application/json
accountstring · min: 1 · max: 128Required

Account is the internal customer account ID.

Example: 7v
createdinteger · int64Required

Created is the unix timestamp at which the resource was originally created in milliseconds.

Example: 6780445067469863000
executedbooleanRequired

The boolean value indicating if the remote execution has been executed.

Example: false
idstring · uuidRequired

The ID of the remote execution.

Example: f80c7016-ab07-49c2-b03d-4152e10aa4a0
orgstring · min: 1 · max: 128Required

Org is the organisation identifier.

Example: 508
pipeline_execution_idstringRequired

The pipeline execution ID of the pipeline executing the remote execution

Example: Consequatur et nisi.
pipeline_execution_urlstringRequired

The pipeline execution URL of the pipeline executing the remote execution

Example: Et quis ut.
projectstring · min: 1 · max: 128Required

Project is the project identifier.

Example: r3d
sha256_checksumstringRequired

The checksum of the patch file of changes that the remote execution will run against.

Example: Iusto voluptas consequuntur.
updatedinteger · int64Required

Modified is the unix timestamp at which the resource was last modified in milliseconds.

Example: 3088580093997148700
workspacestringRequired

The workspace associated with the remote execution.

Example: Et voluptatem saepe.
post/api/orgs/{org}/projects/{project}/workspaces/{workspace}/remote-executions
POST /api/orgs/{org}/projects/{project}/workspaces/{workspace}/remote-executions HTTP/1.1
Host: localhost:80
Harness-Account: e5s
Content-Type: application/json
Accept: */*
Content-Length: 289

{
  "custom_arguments": {
    "Officiis et repellat.": [
      "Nihil dolor sequi praesentium.",
      "Explicabo pariatur maxime omnis qui nisi.",
      "Ut nulla aut et.",
      "Saepe facilis."
    ],
    "Quia repudiandae modi rerum aspernatur.": [
      "Voluptas architecto eum voluptatum quia sit et.",
      "Et sit ea deserunt adipisci et."
    ]
  }
}
{
  "account": "5j",
  "created": 2923362080410904000,
  "custom_arguments": {
    "Enim quibusdam soluta minus aut.": [
      "Commodi exercitationem numquam deleniti.",
      "Aliquam qui sunt quos.",
      "Ipsam est qui quidem tenetur.",
      "Ipsam ullam ut aut alias vel."
    ]
  },
  "executed": true,
  "id": "6d0a8798-7dd0-48a1-b8ff-edddd0f6f11e",
  "org": "u",
  "pipeline_execution_id": "Consequatur perferendis dignissimos minus.",
  "pipeline_execution_url": "Consequuntur aut.",
  "project": "qr",
  "sha256_checksum": "Sequi repudiandae quam eligendi ab deleniti.",
  "updated": 6950789718625565000,
  "workspace": "Tempora sequi."
}

Show remote execution

get

Find remote execution

Path parameters
orgstring · min: 1 · max: 128Required

Org is the organisation identifier.

Example: 4wc
projectstring · min: 1 · max: 128Required

Project is the project identifier.

Example: t1d
workspacestringRequired

Workspace is the resource workspace this variable is associated with.

Example: Aspernatur iusto aut quam.
idstring · uuidRequired

The ID of the remote execution

Example: 2578aa44-5c1d-42e3-b8ad-1bbbc091c0bc
Header parameters
Harness-Accountstring · min: 1 · max: 128Required

Account is the internal customer account ID.

Example: q
Responses
200

OK response.

application/json
accountstring · min: 1 · max: 128Required

Account is the internal customer account ID.

Example: yp
createdinteger · int64Required

Created is the unix timestamp at which the resource was originally created in milliseconds.

Example: 2168203252567040000
executedbooleanRequired

The boolean value indicating if the remote execution has been executed.

Example: true
idstring · uuidRequired

The ID of the remote execution.

Example: 5d3dccf0-e704-476d-8114-379124e8c952
orgstring · min: 1 · max: 128Required

Org is the organisation identifier.

Example: m05
pipeline_execution_idstringRequired

The pipeline execution ID of the pipeline executing the remote execution

Example: Aliquid nulla rerum veritatis libero cum.
pipeline_execution_urlstringRequired

The pipeline execution URL of the pipeline executing the remote execution

Example: Sed ab.
projectstring · min: 1 · max: 128Required

Project is the project identifier.

Example: tlx
sha256_checksumstringRequired

The checksum of the patch file of changes that the remote execution will run against.

Example: Neque eum.
updatedinteger · int64Required

Modified is the unix timestamp at which the resource was last modified in milliseconds.

Example: 2783501292935401500
workspacestringRequired

The workspace associated with the remote execution.

Example: Laboriosam exercitationem quas in beatae facilis.
get/api/orgs/{org}/projects/{project}/workspaces/{workspace}/remote-executions/{id}
GET /api/orgs/{org}/projects/{project}/workspaces/{workspace}/remote-executions/{id} HTTP/1.1
Host: localhost:80
Harness-Account: q
Accept: */*
{
  "account": "s",
  "created": 5846184400883632000,
  "custom_arguments": {
    "Consequuntur voluptatibus ut.": [
      "Reiciendis harum minima laboriosam velit accusantium sed.",
      "Reprehenderit qui et.",
      "Veritatis amet voluptatum a.",
      "Corporis exercitationem laboriosam voluptate natus qui voluptas."
    ],
    "Sunt sunt.": [
      "Sit et aut qui.",
      "Placeat nisi consequatur sunt voluptates.",
      "Quo neque dicta suscipit rerum."
    ]
  },
  "executed": false,
  "id": "04d592f9-b0b1-4ece-91ce-47b7e5cd7862",
  "org": "up",
  "pipeline_execution_id": "Laudantium quisquam et in aut iusto.",
  "pipeline_execution_url": "Sit officia.",
  "project": "jm",
  "sha256_checksum": "Ut cupiditate aut quia facere voluptas.",
  "updated": 2925468222543709700,
  "workspace": "Voluptates explicabo unde adipisci praesentium."
}

Download remote execution

get

Download the source code for the remote plan.

Path parameters
orgstring · min: 1 · max: 128Required

Org is the organisation identifier.

Example: cb5
projectstring · min: 1 · max: 128Required

Project is the project identifier.

Example: zp
workspacestringRequired

Workspace is the resource workspace this variable is associated with.

Example: Excepturi quis possimus maxime omnis aliquid in.
idstring · uuidRequired

The ID of the remote execution

Example: 6970355f-2b67-423f-a90c-989a66fa3155
Header parameters
Harness-Accountstring · min: 1 · max: 128Required

Account is the internal customer account ID.

Example: b
Responses
200

OK response.

application/json
Responsestring · binary
get/api/orgs/{org}/projects/{project}/workspaces/{workspace}/remote-executions/{id}/download
GET /api/orgs/{org}/projects/{project}/workspaces/{workspace}/remote-executions/{id}/download HTTP/1.1
Host: localhost:80
Harness-Account: b
Accept: */*
binary

execute-remote-execution workspaces

post

Execute the remote execution

Path parameters
orgstring · min: 1 · max: 128Required

Org is the organisation identifier.

Example: un6
projectstring · min: 1 · max: 128Required

Project is the project identifier.

Example: nvk
workspacestringRequired

Workspace is the resource workspace this variable is associated with.

Example: Eum ipsa.
idstring · uuidRequired

The ID of the remote execution

Example: dbb1a2f5-ef89-4993-ab84-2d196a463064
Header parameters
Harness-Accountstring · min: 1 · max: 128Required

Account is the internal customer account ID.

Example: byc
Responses
200

OK response.

application/json

remote execution details for a specific workspace.

accountstring · min: 1 · max: 128Required

Account is the internal customer account ID.

Example: d
createdinteger · int64Required

Created is the unix timestamp at which the resource was originally created in milliseconds.

Example: 373953134849103600
executedbooleanRequired

The boolean value indicating if the remote execution has been executed.

Example: true
idstring · uuidRequired

The ID of the remote execution.

Example: b60bf3d4-c07a-4ae5-a9aa-d202f44e91a2
orgstring · min: 1 · max: 128Required

Org is the organisation identifier.

Example: in
pipeline_execution_idstringRequired

The pipeline execution ID of the pipeline executing the remote execution

Example: Rem et unde alias consectetur qui.
pipeline_execution_urlstringRequired

The pipeline execution URL of the pipeline executing the remote execution

Example: Velit quis laborum facere qui et nulla.
projectstring · min: 1 · max: 128Required

Project is the project identifier.

Example: p
sha256_checksumstringRequired

The checksum of the patch file of changes that the remote execution will run against.

Example: Voluptatem pariatur reprehenderit.
updatedinteger · int64Required

Modified is the unix timestamp at which the resource was last modified in milliseconds.

Example: 370283931129504300
workspacestringRequired

The workspace associated with the remote execution.

Example: Qui sit quasi.
post/api/orgs/{org}/projects/{project}/workspaces/{workspace}/remote-executions/{id}/execute
POST /api/orgs/{org}/projects/{project}/workspaces/{workspace}/remote-executions/{id}/execute HTTP/1.1
Host: localhost:80
Harness-Account: byc
Accept: */*
{
  "account": "eba",
  "created": 1746185806223233000,
  "custom_arguments": {
    "Earum cumque tempora.": [
      "Sit et possimus.",
      "Quas commodi odio possimus iusto est.",
      "Ut rerum provident ipsum consequatur recusandae.",
      "Explicabo in est distinctio quis dignissimos."
    ],
    "Et vel odio quia est est aliquid.": [
      "Sit et aspernatur delectus ducimus alias illo.",
      "Iste esse qui dolores quibusdam.",
      "Sed et distinctio sapiente occaecati est."
    ],
    "Qui sed corrupti nam expedita praesentium et.": [
      "Optio natus ut minus.",
      "Dolores rerum iure vero aliquam exercitationem.",
      "Deleniti asperiores dolorem."
    ]
  },
  "executed": false,
  "id": "1559929f-31be-406f-a2ab-d108b3982172",
  "org": "k",
  "pipeline_execution_id": "Molestiae officia adipisci consequuntur et architecto.",
  "pipeline_execution_url": "Commodi placeat veritatis.",
  "project": "3v3",
  "sha256_checksum": "Beatae est.",
  "updated": 3602521834027049000,
  "workspace": "Ut sit minima eos est laboriosam."
}

Upload remote execution source

post

Upload the source code for the remote execution.

Path parameters
orgstring · min: 1 · max: 128Required

Org is the organisation identifier.

Example: d
projectstring · min: 1 · max: 128Required

Project is the project identifier.

Example: n2
workspacestringRequired

Workspace is the resource workspace this variable is associated with.

Example: Nihil quia esse corrupti veniam qui.
idstring · uuidRequired

The ID of the remote execution

Example: 01de0920-2339-407d-8d99-9d2f78fa69e1
Header parameters
Harness-Accountstring · min: 1 · max: 128Required

Account is the internal customer account ID.

Example: s
Content-Lengthinteger · int64Optional

Size in bytes of the source code.

Example: 4378301106325908500
Content-DigeststringRequired

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: Itaque dolores ut voluptatem.
Responses
200

OK response.

application/json
accountstring · min: 1 · max: 128Required

Account is the internal customer account ID.

Example: as
createdinteger · int64Required

Created is the unix timestamp at which the resource was originally created in milliseconds.

Example: 613070183896880400
executedbooleanRequired

The boolean value indicating if the remote execution has been executed.

Example: false
idstring · uuidRequired

The ID of the remote execution.

Example: e893f6c6-54dd-4ebd-9d19-389c9a90f1e5
orgstring · min: 1 · max: 128Required

Org is the organisation identifier.

Example: j
pipeline_execution_idstringRequired

The pipeline execution ID of the pipeline executing the remote execution

Example: Veniam culpa laudantium.
pipeline_execution_urlstringRequired

The pipeline execution URL of the pipeline executing the remote execution

Example: Blanditiis ea reiciendis nemo sunt.
projectstring · min: 1 · max: 128Required

Project is the project identifier.

Example: f4
sha256_checksumstringRequired

The checksum of the patch file of changes that the remote execution will run against.

Example: Est vel.
updatedinteger · int64Required

Modified is the unix timestamp at which the resource was last modified in milliseconds.

Example: 470833627133889660
workspacestringRequired

The workspace associated with the remote execution.

Example: Voluptatem architecto nobis consequuntur.
post/api/orgs/{org}/projects/{project}/workspaces/{workspace}/remote-executions/{id}/upload
POST /api/orgs/{org}/projects/{project}/workspaces/{workspace}/remote-executions/{id}/upload HTTP/1.1
Host: localhost:80
Harness-Account: s
Content-Digest: Itaque dolores ut voluptatem.
Accept: */*
{
  "account": "w0b",
  "created": 5931500354233517000,
  "custom_arguments": {
    "Occaecati facere vel ut.": [
      "Inventore non.",
      "Odio voluptatem fugiat.",
      "Totam vitae consequatur beatae."
    ],
    "Veniam veniam sapiente beatae voluptas molestias modi.": [
      "Id sed placeat est rerum laboriosam.",
      "Et natus."
    ]
  },
  "executed": true,
  "id": "c51f0e7e-e7b3-4bf8-a3a8-18ea9271db3c",
  "org": "zl",
  "pipeline_execution_id": "Quae inventore explicabo et esse corrupti.",
  "pipeline_execution_url": "Exercitationem recusandae aspernatur.",
  "project": "nv",
  "sha256_checksum": "Tenetur minima reiciendis aliquam sit.",
  "updated": 3462074111333053400,
  "workspace": "Nulla architecto eum dolores."
}

List workspace resource types

get

Retrieves the resource types used by workspaces

Path parameters
orgstring · min: 1 · max: 128Required

Org is the organisation identifier.

Example: puz
projectstring · min: 1 · max: 128Required

Project is the project identifier.

Example: s1
workspacestringRequired

Workspace identifier

Example: Perferendis est.
Header parameters
Harness-Accountstring · min: 1 · max: 128Required

Account is the internal customer account ID.

Example: 0
Responses
200

OK response.

application/json
string[]Optional

List of resource types

Example: ["Praesentium eum quo.","Qui ut.","Quae asperiores tempora suscipit perspiciatis voluptatem modi.","Incidunt asperiores autem aut fuga eos totam."]
get/api/orgs/{org}/projects/{project}/workspaces/{workspace}/resource-types
GET /api/orgs/{org}/projects/{project}/workspaces/{workspace}/resource-types HTTP/1.1
Host: localhost:80
Harness-Account: 0
Accept: */*
[
  "At dicta harum suscipit dolores nisi explicabo.",
  "Repellat illo aliquid vero recusandae commodi omnis."
]

Map of resource types and their attributes

get

Retrieves the resource type attributes used by workspaces and attributes

Path parameters
orgstring · min: 1 · max: 128Required

Org is the organisation identifier.

Example: xhl
projectstring · min: 1 · max: 128Required

Project is the project identifier.

Example: 1u
workspacestringRequired

Workspace identifier

Example: Molestiae assumenda.
Header parameters
Harness-Accountstring · min: 1 · max: 128Required

Account is the internal customer account ID.

Example: 0
Responses
200

OK response.

application/json

Map of resource types and their attributes

Other propertiesstring[]OptionalExample: ["Facilis consequatur alias.","Nemo dolores culpa.","Libero facilis et quibusdam quidem."]
get/api/orgs/{org}/projects/{project}/workspaces/{workspace}/resource-types-and-attributes
GET /api/orgs/{org}/projects/{project}/workspaces/{workspace}/resource-types-and-attributes HTTP/1.1
Host: localhost:80
Harness-Account: 0
Accept: */*
{
  "Eos fugiat minima provident.": [
    "Qui perspiciatis nulla iure et dolore.",
    "Veritatis a eaque quod voluptatum fuga.",
    "Ut labore repudiandae."
  ]
}

List workspace resource type attributes

get

Retrieves the resource type attributes used by workspaces

Path parameters
orgstring · min: 1 · max: 128Required

Org is the organisation identifier.

Example: 3k
projectstring · min: 1 · max: 128Required

Project is the project identifier.

Example: i
workspacestringRequired

Workspace identifier

Example: Deserunt praesentium ut earum cumque sunt.
resource_typestringRequired

Resource type

Example: At possimus inventore.
Header parameters
Harness-Accountstring · min: 1 · max: 128Required

Account is the internal customer account ID.

Example: noy
Responses
200

OK response.

application/json
string[]Optional

List of resource type attributes

Example: ["Amet sit cupiditate exercitationem.","Laboriosam aut.","Necessitatibus aliquam.","Et voluptas quae expedita et est ipsa."]
get/api/orgs/{org}/projects/{project}/workspaces/{workspace}/resource-types/{resource_type}/attributes
GET /api/orgs/{org}/projects/{project}/workspaces/{workspace}/resource-types/{resource_type}/attributes HTTP/1.1
Host: localhost:80
Harness-Account: noy
Accept: */*
[
  "Repellendus inventore accusantium vel consequatur occaecati dolor.",
  "Incidunt magni blanditiis occaecati id assumenda esse.",
  "Minus vel ut.",
  "Dolorem qui."
]

Delete resources

delete

Deletes destroyed resources for a workspace.

Path parameters
orgstring · min: 1 · max: 128Required

Org is the organisation identifier.

Example: lod
projectstring · min: 1 · max: 128Required

Project is the project identifier.

Example: n
workspacestringRequired

Workspace identifier

Example: Quia voluptate pariatur.
Header parameters
Harness-Accountstring · min: 1 · max: 128Required

Account is the internal customer account ID.

Example: 49d
Body
Responses
200

OK response.

application/json
delete/api/orgs/{org}/projects/{project}/workspaces/{workspace}/resources
DELETE /api/orgs/{org}/projects/{project}/workspaces/{workspace}/resources HTTP/1.1
Host: localhost:80
Harness-Account: 49d
Content-Type: application/json
Accept: */*
Content-Length: 919

{
  "resources": [
    {
      "module": "Sit molestias.",
      "name": "Distinctio iure animi facilis accusantium.",
      "path_id": "Nihil earum.",
      "provider": "Eveniet iusto numquam voluptatem quia et provident.",
      "type": "Omnis cumque aliquam placeat ut saepe ducimus."
    },
    {
      "module": "Sit molestias.",
      "name": "Distinctio iure animi facilis accusantium.",
      "path_id": "Nihil earum.",
      "provider": "Eveniet iusto numquam voluptatem quia et provident.",
      "type": "Omnis cumque aliquam placeat ut saepe ducimus."
    },
    {
      "module": "Sit molestias.",
      "name": "Distinctio iure animi facilis accusantium.",
      "path_id": "Nihil earum.",
      "provider": "Eveniet iusto numquam voluptatem quia et provident.",
      "type": "Omnis cumque aliquam placeat ut saepe ducimus."
    },
    {
      "module": "Sit molestias.",
      "name": "Distinctio iure animi facilis accusantium.",
      "path_id": "Nihil earum.",
      "provider": "Eveniet iusto numquam voluptatem quia et provident.",
      "type": "Omnis cumque aliquam placeat ut saepe ducimus."
    }
  ]
}
{
  "results": [
    {
      "error": "A similique quibusdam incidunt officiis.",
      "module": "Eaque facilis.",
      "name": "Illum est ut neque laborum.",
      "provider": "Voluptas magnam ut animi voluptatibus.",
      "status": "skipped",
      "type": "Nesciunt aperiam similique adipisci dignissimos exercitationem."
    },
    {
      "error": "A similique quibusdam incidunt officiis.",
      "module": "Eaque facilis.",
      "name": "Illum est ut neque laborum.",
      "provider": "Voluptas magnam ut animi voluptatibus.",
      "status": "skipped",
      "type": "Nesciunt aperiam similique adipisci dignissimos exercitationem."
    }
  ],
  "summary": {
    "deleted": 6644572953107601000,
    "failed": 1083001572762766100,
    "skipped": 8213593984185752000,
    "total": 1926069642079262000
  }
}

Update resources

patch

Updates resources for a workspace.

Path parameters
orgstring · min: 1 · max: 128Required

Org is the organisation identifier.

Example: c
projectstring · min: 1 · max: 128Required

Project is the project identifier.

Example: 0wo
workspacestringRequired

Workspace identifier

Example: Omnis voluptate perspiciatis beatae quia ab.
Header parameters
Harness-Accountstring · min: 1 · max: 128Required

Account is the internal customer account ID.

Example: h
Body
session_idstring · uuidOptional

Session ID to track resource updates belongs to same operation

Example: 5d07809c-9e8e-4774-8d69-da3689710ab1
update_modestring · enumOptional

Update mode: upsert (default) updates attributes; drift updates drift columns only

Default: upsertExample: driftPossible values:
Responses
200

OK response.

application/json
patch/api/orgs/{org}/projects/{project}/workspaces/{workspace}/resources
PATCH /api/orgs/{org}/projects/{project}/workspaces/{workspace}/resources HTTP/1.1
Host: localhost:80
Harness-Account: h
Content-Type: application/json
Accept: */*
Content-Length: 1746

{
  "resources": [
    {
      "attributes": "Explicabo qui.",
      "drift_attributes": {
        "Earum omnis et.": "Optio iusto cum veritatis."
      },
      "drift_status": "unchanged",
      "mode": "Rem qui magni rem ratione et.",
      "module": "Adipisci maxime saepe ducimus debitis.",
      "name": "Et placeat.",
      "path_id": "Officiis a eos voluptatem.",
      "provider": "Est doloremque.",
      "sensitive_attribute_paths": [
        "Earum architecto sed laboriosam.",
        "Veniam dolores placeat autem in placeat.",
        "Quaerat et minus deleniti delectus omnis.",
        "Est iste porro eveniet velit sequi."
      ],
      "type": "Explicabo nihil praesentium omnis et molestiae."
    },
    {
      "attributes": "Explicabo qui.",
      "drift_attributes": {
        "Earum omnis et.": "Optio iusto cum veritatis."
      },
      "drift_status": "unchanged",
      "mode": "Rem qui magni rem ratione et.",
      "module": "Adipisci maxime saepe ducimus debitis.",
      "name": "Et placeat.",
      "path_id": "Officiis a eos voluptatem.",
      "provider": "Est doloremque.",
      "sensitive_attribute_paths": [
        "Earum architecto sed laboriosam.",
        "Veniam dolores placeat autem in placeat.",
        "Quaerat et minus deleniti delectus omnis.",
        "Est iste porro eveniet velit sequi."
      ],
      "type": "Explicabo nihil praesentium omnis et molestiae."
    },
    {
      "attributes": "Explicabo qui.",
      "drift_attributes": {
        "Earum omnis et.": "Optio iusto cum veritatis."
      },
      "drift_status": "unchanged",
      "mode": "Rem qui magni rem ratione et.",
      "module": "Adipisci maxime saepe ducimus debitis.",
      "name": "Et placeat.",
      "path_id": "Officiis a eos voluptatem.",
      "provider": "Est doloremque.",
      "sensitive_attribute_paths": [
        "Earum architecto sed laboriosam.",
        "Veniam dolores placeat autem in placeat.",
        "Quaerat et minus deleniti delectus omnis.",
        "Est iste porro eveniet velit sequi."
      ],
      "type": "Explicabo nihil praesentium omnis et molestiae."
    }
  ],
  "session_id": "af5e596a-58de-4c2f-ad60-4272ee1fb9a0",
  "update_mode": "upsert"
}
{
  "results": [
    {
      "error": "Ut delectus repellat nemo consequatur omnis rem.",
      "mode": "Ipsa omnis ea.",
      "module": "Est deserunt dicta corporis recusandae.",
      "name": "Autem deserunt voluptas.",
      "provider": "Nulla voluptate aliquid et.",
      "status": "failed",
      "type": "Qui necessitatibus sint."
    },
    {
      "error": "Ut delectus repellat nemo consequatur omnis rem.",
      "mode": "Ipsa omnis ea.",
      "module": "Est deserunt dicta corporis recusandae.",
      "name": "Autem deserunt voluptas.",
      "provider": "Nulla voluptate aliquid et.",
      "status": "failed",
      "type": "Qui necessitatibus sint."
    },
    {
      "error": "Ut delectus repellat nemo consequatur omnis rem.",
      "mode": "Ipsa omnis ea.",
      "module": "Est deserunt dicta corporis recusandae.",
      "name": "Autem deserunt voluptas.",
      "provider": "Nulla voluptate aliquid et.",
      "status": "failed",
      "type": "Qui necessitatibus sint."
    }
  ],
  "summary": {
    "failed": 8530308004572883000,
    "skipped": 7551007554483574000,
    "total": 4080830785687873500,
    "updated": 1165981821357634000
  }
}

Delete stale resources

delete

Deletes stale resources for a workspace that don't belong to the current session.

Path parameters
orgstring · min: 1 · max: 128Required

Org is the organisation identifier.

Example: a2g
projectstring · min: 1 · max: 128Required

Project is the project identifier.

Example: y
workspacestringRequired

Workspace identifier

Example: Eaque omnis facere architecto neque et.
Header parameters
Harness-Accountstring · min: 1 · max: 128Required

Account is the internal customer account ID.

Example: dtm
Body
session_idstring · uuidRequired

Current session ID - resources not matching this will be deleted

Example: 468dadad-01c3-429f-b57a-64b87273bcca
Responses
200

OK response.

application/json
deleted_countinteger · int64Required

Number of stale resources deleted

Example: 4950641383897993000
delete/api/orgs/{org}/projects/{project}/workspaces/{workspace}/resources/stale
DELETE /api/orgs/{org}/projects/{project}/workspaces/{workspace}/resources/stale HTTP/1.1
Host: localhost:80
Harness-Account: dtm
Content-Type: application/json
Accept: */*
Content-Length: 53

{
  "session_id": "74cc7cf0-b913-40b9-8909-7fa502354304"
}
{
  "deleted_count": 8457560113730301000
}

Upload risk assessment data

post

Upload per-resource risk data and overall risk summary for an existing plan file.

Path parameters
orgstring · min: 1 · max: 128Required

Org is the organisation identifier.

Example: 1a
projectstring · min: 1 · max: 128Required

Project is the project identifier.

Example: c
workspacestringRequired

Workspace identifier

Example: workspace123
Query parameters
pipeline_idstringRequired

The unique identifier for the associated pipeline

Example: Laborum enim distinctio assumenda sint.
stage_idstringRequired

The unique identifier for a stage

Example: Tenetur nobis ipsum nihil.
pipeline_execution_idstringRequired

The unique identifier for the associated pipeline execution

Example: Quo occaecati tempora ipsam.
pipeline_stage_idstringRequired

The unique identifier for the associated pipeline execution stage

Example: Ea molestias dolor.
provisioner_typestring · enumRequired

Type of provisioner that created the data

Example: tfPossible values:
data_typestring · enumRequired

Type of data stored

Example: cdk_templatePossible values:
stack_pathstringOptional

Optional path to the stack module

Example: Earum corporis nostrum eaque.
Header parameters
Harness-Accountstring · min: 1 · max: 128Required

Account is the internal customer account ID.

Example: m1
Content-Lengthinteger · int64Optional

Size in bytes of the risk data.

Example: 5015829674761107000
Responses
200

OK response.

application/json
idstringRequired

The unique identifier for the data

Example: dc538c61-de48-4220-958c-5f3c4f983daa
policy_evaluation_messagestringOptional

Pre-rendered message included when policy evaluation did not pass

Example: - instance type 'xlarge' is not permitted
policy_evaluation_statusstring · enumOptional

The overall status of policy evaluation (if it occurred) indicating whether it passed

Example: errorPossible values:
post/api/orgs/{org}/projects/{project}/workspaces/{workspace}/risk-assessment
POST /api/orgs/{org}/projects/{project}/workspaces/{workspace}/risk-assessment?pipeline_id=Laborum+enim+distinctio+assumenda+sint.&stage_id=Tenetur+nobis+ipsum+nihil.&pipeline_execution_id=Quo+occaecati+tempora+ipsam.&pipeline_stage_id=Ea+molestias+dolor.&provisioner_type=tf&data_type=cdk_template HTTP/1.1
Host: localhost:80
Harness-Account: m1
Accept: */*
{
  "id": "dc538c61-de48-4220-958c-5f3c4f983daa",
  "policy_evaluation": [
    {
      "message": "Labore quas debitis numquam voluptatem et.",
      "policy_id": "Quisquam eos tempore amet aliquid molestias quisquam.",
      "policy_name": "Eum accusantium soluta ab non fugiat.",
      "policy_set_id": "Aut nihil quas est aspernatur illo qui.",
      "policy_set_name": "Autem dolorum itaque.",
      "policy_status": "Esse porro alias dolorem."
    },
    {
      "message": "Labore quas debitis numquam voluptatem et.",
      "policy_id": "Quisquam eos tempore amet aliquid molestias quisquam.",
      "policy_name": "Eum accusantium soluta ab non fugiat.",
      "policy_set_id": "Aut nihil quas est aspernatur illo qui.",
      "policy_set_name": "Autem dolorum itaque.",
      "policy_status": "Esse porro alias dolorem."
    }
  ],
  "policy_evaluation_message": "- instance type 'xlarge' is not permitted",
  "policy_evaluation_status": "error"
}

Roll back workspace state to a previous version

post

Copies a historical state file to a new version and sets the workspace state pointer to it. Blocked when a pipeline execution is in flight.

Path parameters
orgstring · min: 1 · max: 128Required

Org is the organisation identifier.

Example: pzn
projectstring · min: 1 · max: 128Required

Project is the project identifier.

Example: k
workspacestringRequired

Workspace identifier

Example: Modi ab possimus rerum provident aut.
data_idstring · uuidRequired

The unique identifier of the state version to roll back to

Example: d7a1e193-69e0-4998-a95e-847bde74091c
Header parameters
Harness-Accountstring · min: 1 · max: 128Required

Account is the internal customer account ID.

Example: k6
Body
rollback_reasonstringOptional

Optional human-readable reason for the rollback

Example: Quas quia laborum ratione quidem cumque.
Responses
200

OK response.

application/json
activity_idstring · uuidRequired

The unique identifier of the audit activity record

Example: 213e914e-db63-49a1-9b34-52e84efd47e2
new_data_idstring · uuidRequired

The unique identifier of the new state version created by the rollback

Example: 1a93ef56-222a-4d93-bd28-616041a027c5
new_file_versioninteger · int64Required

The file version timestamp (microseconds) of the new state object

Example: 6974116809278287000
post/api/orgs/{org}/projects/{project}/workspaces/{workspace}/state-versions/{data_id}/rollback
POST /api/orgs/{org}/projects/{project}/workspaces/{workspace}/state-versions/{data_id}/rollback HTTP/1.1
Host: localhost:80
Harness-Account: k6
Content-Type: application/json
Accept: */*
Content-Length: 64

{
  "rollback_reason": "Eos sint dignissimos aliquid ratione quos."
}
{
  "activity_id": "2ebd2015-120f-4a66-a1e4-39b583b9e96d",
  "new_data_id": "bdb26b4b-1208-4cbc-ad7d-f7f12ed2420e",
  "new_file_version": 1108218460612385900
}

List provisioners ratio

get

Retrieves the ratio of provisioners used by workspaces

Path parameters
orgstring · min: 1 · max: 128Required

Org is the organisation identifier.

Example: ob
projectstring · min: 1 · max: 128Required

Project is the project identifier.

Example: 17
Query parameters
start_timeinteger · int64Optional

Start time filter (Unix timestamp)

Example: 3413182767305545700
end_timeinteger · int64Optional

End time filter (Unix timestamp)

Example: 1248066571402270500
Header parameters
Harness-Accountstring · min: 1 · max: 128Required

Account is the internal customer account ID.

Example: 7
Responses
200

OK response.

application/json

List of provisioners ratio

totalnumber · doubleRequired

Total number of workspaces

Example: 0.20175152613000244
get/api/orgs/{org}/projects/{project}/workspaces/provisioners-ratio
GET /api/orgs/{org}/projects/{project}/workspaces/provisioners-ratio HTTP/1.1
Host: localhost:80
Harness-Account: 7
Accept: */*
{
  "provisioner": {
    "Et et recusandae fugit unde ex sunt.": 0.3253491361153183,
    "Quaerat et numquam illum.": 0.5311634618667437,
    "Ut quaerat quos aut.": 0.07492339759156615
  },
  "total": 0.9352788051613689
}

List workspaces associated with a template ID

get

Get all workspaces associated with a specific template ID

Path parameters
template_idstring · min: 1 · max: 128Required

Template identifier to filter workspaces

Example: 4ie
Query parameters
orgstring · min: 1 · max: 128Optional

Organization identifier (required for 'org' and 'project' scope).

Example: vnp
projectstring · min: 1 · max: 128Optional

Project identifier (required for 'project' scope).

Example: 5
versionstring · min: 1 · max: 32Optional

Template version associated with the workspace.

Example: g0e
Header parameters
Harness-Accountstring · min: 1 · max: 128Required

Account identifier.

Example: v
Responses
200

OK response.

application/json

List of workspaces associated with the template ID

accountstring · min: 1 · max: 128Required

Account identifier.

Example: m
created_atinteger · int64Required

Timestamp when the workspace-template association was created.

Example: 1627590400
orgstring · min: 1 · max: 128Required

Organization identifier.

Example: nsn
projectstring · min: 1 · max: 128Required

Project identifier.

Example: 8y
template_idstring · min: 1 · max: 128Required

Template identifier.

Example: a5z
updated_atinteger · int64Required

Timestamp when the workspace-template association was last updated.

Example: 1627686800
versionstring · min: 1 · max: 32Optional

Template version associated with the workspace.

Example: 14e
workspace_idstring · min: 1 · max: 128Required

Workspace identifier.

Example: h
get/api/workspace/templates/{template_id}
GET /api/workspace/templates/{template_id} HTTP/1.1
Host: localhost:80
Harness-Account: v
Accept: */*
[
  {
    "account": "kn",
    "created_at": 1627590400,
    "org": "4e",
    "project": "bjr",
    "template_id": "qr4",
    "updated_at": 1627686800,
    "version": "8h",
    "workspace_id": "6p"
  },
  {
    "account": "kn",
    "created_at": 1627590400,
    "org": "4e",
    "project": "bjr",
    "template_id": "qr4",
    "updated_at": 1627686800,
    "version": "8h",
    "workspace_id": "6p"
  },
  {
    "account": "kn",
    "created_at": 1627590400,
    "org": "4e",
    "project": "bjr",
    "template_id": "qr4",
    "updated_at": 1627686800,
    "version": "8h",
    "workspace_id": "6p"
  }
]

Last updated

Was this helpful?