# Update resources

Updates resources for a workspace.

Endpoint: PATCH /iacm/api/orgs/{org}/projects/{project}/workspaces/{workspace}/resources
Version: 1.0
Security: x-api-key

## Path parameters:

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

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

  - `workspace` (string, required)
    Workspace identifier
    Example: "Perferendis architecto nisi voluptatem sed eos."

## Header parameters:

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

## Request fields (application/json):

  - `resources` (array, required)
    Example: [{"attributes":"Magnam suscipit doloribus eos mollitia et reiciendis.","drift_attributes":{"Ut reprehenderit.":"Sed ut."},"drift_status":"unchanged","mode":"Voluptatem cum exercitationem facere minima vero.","module":"Atque autem.","name":"Eveniet beatae qui id.","path_id":"Illum et dolorem eum voluptas amet iusto.","provider":"Rem et et rem eligendi.","sensitive_attribute_paths":["Sit dicta mollitia.","Voluptate quis.","Voluptatem molestiae voluptatem.","Sunt ut enim architecto."],"type":"Veniam quia."},{"attributes":"Magnam suscipit doloribus eos mollitia et reiciendis.","drift_attributes":{"Ut reprehenderit.":"Sed ut."},"drift_status":"unchanged","mode":"Voluptatem cum exercitationem facere minima vero.","module":"Atque autem.","name":"Eveniet beatae qui id.","path_id":"Illum et dolorem eum voluptas amet iusto.","provider":"Rem et et rem eligendi.","sensitive_attribute_paths":["Sit dicta mollitia.","Voluptate quis.","Voluptatem molestiae voluptatem.","Sunt ut enim architecto."],"type":"Veniam quia."}]

  - `resources.attributes` (any, required)
    Resource attributes
    Example: "Quod voluptas illum ad amet."

  - `resources.drift_attributes` (object)
    Map of drifted attribute values (used when update_mode=drift)
    Example: {"Dolor nam tenetur ut.":"Aspernatur voluptatem laboriosam.","Voluptas hic sit ut nulla.":"Dolor vel."}

  - `resources.drift_status` (string)
    Drift status of the resource (used when update_mode=drift)
    Enum: "changed", "deleted", "unchanged", ""

  - `resources.mode` (string, required)
    managed, datasource, output
    Example: "Voluptatem laboriosam blanditiis sed deleniti quae."

  - `resources.module` (string, required)
    Module path
    Example: "Dolorum eligendi."

  - `resources.name` (string, required)
    Resource name
    Example: "Soluta tempore qui exercitationem minus quia et."

  - `resources.path_id` (string)
    path id
    Example: "Itaque dolor distinctio id placeat cupiditate nisi."

  - `resources.provider` (string, required)
    Provider name
    Example: "Rerum veritatis libero cum nostrum."

  - `resources.sensitive_attribute_paths` (array)
    Paths to sensitive attributes
    Example: ["Eum consectetur dolorem suscipit.","Porro cum in qui vero.","Aspernatur quia.","Pariatur alias ut ut."]

  - `resources.type` (string, required)
    Resource type
    Example: "Ab dicta alias neque eum et aut."

  - `session_id` (string)
    Session ID to track resource updates belongs to same operation
    Example: "c0dde832-2c07-43ce-9d5c-e56d88b2bd6a"

  - `update_mode` (string)
    Update mode: upsert (default) updates attributes; drift updates drift columns only
    Enum: "upsert", "drift"

## Response 200 fields (application/json):

  - `results` (array, required)
    Example: [{"error":"Autem officia quae quidem explicabo officiis.","mode":"Iste dolores ipsa consequatur enim magni.","module":"Excepturi vero rerum.","name":"Expedita quis maiores.","provider":"Et architecto aut.","status":"updated","type":"Laboriosam aut rerum."},{"error":"Autem officia quae quidem explicabo officiis.","mode":"Iste dolores ipsa consequatur enim magni.","module":"Excepturi vero rerum.","name":"Expedita quis maiores.","provider":"Et architecto aut.","status":"updated","type":"Laboriosam aut rerum."},{"error":"Autem officia quae quidem explicabo officiis.","mode":"Iste dolores ipsa consequatur enim magni.","module":"Excepturi vero rerum.","name":"Expedita quis maiores.","provider":"Et architecto aut.","status":"updated","type":"Laboriosam aut rerum."},{"error":"Autem officia quae quidem explicabo officiis.","mode":"Iste dolores ipsa consequatur enim magni.","module":"Excepturi vero rerum.","name":"Expedita quis maiores.","provider":"Et architecto aut.","status":"updated","type":"Laboriosam aut rerum."}]

  - `results.error` (string)
    Example: "Provident asperiores nemo quibusdam repudiandae doloremque."

  - `results.mode` (string, required)
    Example: "Magnam et autem exercitationem."

  - `results.module` (string, required)
    Example: "Voluptas aliquid corrupti ex."

  - `results.name` (string, required)
    Example: "Quod perspiciatis accusamus enim nemo."

  - `results.provider` (string, required)
    Example: "Vero fuga nihil ut sunt."

  - `results.status` (string)
    Enum: "updated", "skipped", "failed"

  - `results.type` (string, required)
    Example: "Quasi nam veritatis non doloribus."

  - `summary` (object, required)
    Summary of a resource update operation
    Example: {"failed":6801760227222930000,"skipped":5981981360356494000,"total":6441682581977287000,"updated":7635283771835866000}

  - `summary.failed` (integer, required)
    Number of resources that failed to update
    Example: 6801760227222930000

  - `summary.skipped` (integer, required)
    Number of resources skipped
    Example: 5981981360356494000

  - `summary.total` (integer, required)
    Total number of resources processed
    Example: 6441682581977287000

  - `summary.updated` (integer, required)
    Number of resources successfully updated
    Example: 7635283771835866000

## Response 401 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?


