# Enable ephemeral TTL for all workspaces in a project

Enqueues a background job that configures ephemeral destroy/delete schedules for every workspace in the project.

Endpoint: PUT /iacm/api/orgs/{org}/projects/{project}/settings/ephemeral-config
Version: 1.0
Security: x-api-key

## Path parameters:

  - `org` (string, required)
    Org is the organisation identifier.
    Example: "7b"

  - `project` (string, required)
    Project is the project identifier.
    Example: "tk6"

## Header parameters:

  - `Harness-Account` (string, required)
    Account is the internal customer account ID.
    Example: "w"

## Request fields (application/json):

  - `delete_delay_unit` (string)
    Unit for delete delay
    Enum: "seconds", "minutes", "hours", "days"

  - `delete_delay_value` (integer)
    Delete workspace after N hours or days from now
    Example: 4908762241389554000

  - `delete_on_date` (string)
    Specific date to delete workspace (ISO 8601 format, e.g. 2026-09-02)
    Example: "Magnam debitis harum autem iusto."

  - `delete_workspace` (boolean)
    Whether to delete the workspace record after infrastructure is destroyed
    Example: true

  - `destroy_delay_unit` (string)
    Unit for destroy delay
    Enum: "seconds", "minutes", "hours", "days"

  - `destroy_delay_value` (integer)
    Destroy infrastructure after N hours or days from now
    Example: 7761085910404781000

  - `destroy_on_date` (string)
    Specific date to destroy infrastructure (ISO 8601 format, e.g. 2026-08-24)
    Example: "Veniam tempore repellat et."

  - `pipeline_id` (string, required)
    Pipeline to run for destroying infrastructure
    Example: "Illum a eligendi sapiente vero."

  - `provisioner` (string, required)
    Provisioner type to enable ephemeral for
    Enum: "terraform", "opentofu", "terragrunt", "awscdk"

## Response 202 fields (application/json):

  - `job_id` (integer, required)
    Background job identifier
    Example: 2727023453115230000

  - `status` (string, required)
    Outcome message
    Example: "Non est officia sunt."

## Response 400 fields (application/vnd.goa.error):

  - `fault` (boolean, required)
    Is the error a server-side fault?
    Example: true

  - `id` (string, required)
    ID is a unique identifier for this particular occurrence of the problem.
    Example: "123abc"

  - `message` (string, required)
    Message is a human-readable explanation specific to this occurrence of the problem.
    Example: "parameter 'p' must be an integer"

  - `name` (string, required)
    Name is the name of this class of errors.
    Example: "bad_request"

  - `temporary` (boolean, required)
    Is the error temporary?
    Example: true

  - `timeout` (boolean, required)
    Is the error a timeout?
    Example: true


