## Update Evaluation Group

`evaluation_groups.replace(strgroup_id, EvaluationGroupReplaceParams**kwargs)  -> EvaluationGroup`

**put** `/v5/evaluation-groups/{group_id}`

Replace an evaluation group's attributes and, optionally, its membership.

This is a full replacement of the group's attributes: every attribute field (name,
description, tags, metadata) is written from the request, so omitting an optional
field clears it rather than leaving it unchanged. Use PATCH instead to update only
selected fields and to merge (rather than overwrite) metadata. Membership is replaced
only when evaluation_ids is supplied: the resulting members become exactly that set
(added/removed by diff against the current members), it must contain at least one ID
with no duplicates, and every ID is validated for existence and account access or the
request fails with a 400. When membership actually changes, a best-effort Temporal
workflow is started to recompute the group's dashboard widgets; this is fire-and-forget
and its failure does not fail the request. Removing members hard-deletes the
corresponding chart columns and any charts left with no columns.

### Parameters

- `group_id: str`

- `description: Optional[str]`

  Optional description

- `evaluation_ids: Optional[Sequence[str]]`

  Complete list of evaluation IDs to include in group (replaces existing members)

- `metadata: Optional[Dict[str, object]]`

  Optional metadata key-value pairs

- `name: Optional[str]`

  Name of the evaluation group

- `row_identifiers: Optional[Dict[str, str]]`

  Optional mapping of evaluation_id to column name for cross-dataset joins

- `tags: Optional[Sequence[str]]`

  The tags associated with the entity

### Returns

- `class EvaluationGroup: …`

  Response model for evaluation group

  - `id: str`

    Unique identifier of the evaluation group

  - `account_id: str`

    Account that owns this evaluation group

  - `created_at: datetime`

    When the group was created

  - `name: str`

    Name of the evaluation group

  - `tags: Optional[List[str]]`

    The tags associated with the entity

  - `deleted_at: Optional[datetime]`

    When the group was soft-deleted

  - `description: Optional[str]`

    Optional description

  - `members: Optional[List[EvaluationGroupMember]]`

    Evaluation members in this group. Returned by default on GET by id; on list endpoints, populated only with the 'members' view.

    - `id: str`

      Unique identifier of the member record

    - `created_at: datetime`

      When this member was added to the group

    - `evaluation_group_id: str`

      ID of the evaluation group

    - `evaluation_id: str`

      ID of the evaluation

    - `deleted_at: Optional[datetime]`

      When this membership was soft-deleted (if applicable)

    - `evaluation_created_at: Optional[datetime]`

      When the evaluation was created

    - `evaluation_name: Optional[str]`

      Name of the evaluation

    - `evaluation_tags: Optional[List[str]]`

      Tags of the evaluation

    - `object: Optional[Literal["evaluation_group.member"]]`

      - `"evaluation_group.member"`

  - `metadata: Optional[Dict[str, object]]`

    Optional metadata key-value pairs

  - `object: Optional[Literal["evaluation_group"]]`

    - `"evaluation_group"`

  - `row_identifiers: Optional[List[EvaluationGroupRowIdentifier]]`

    Row identifier mappings. Populated with 'row_identifiers' view.

    - `column_name: str`

      Name of the column used as row identifier

    - `evaluation_id: str`

      ID of the evaluation

    - `object: Optional[Literal["evaluation_group.row_identifier"]]`

      - `"evaluation_group.row_identifier"`

### Example

```python
import os
from scale_gp_beta import SGPClient

client = SGPClient(
    api_key=os.environ.get("SGP_API_KEY"),  # This is the default and can be omitted
)
evaluation_group = client.evaluation_groups.replace(
    group_id="group_id",
)
print(evaluation_group.id)
```

#### Response

```json
{
  "id": "id",
  "account_id": "account_id",
  "created_at": "2019-12-27T18:11:19.117Z",
  "name": "name",
  "tags": [
    "string"
  ],
  "deleted_at": "2019-12-27T18:11:19.117Z",
  "description": "description",
  "members": [
    {
      "id": "id",
      "created_at": "2019-12-27T18:11:19.117Z",
      "evaluation_group_id": "evaluation_group_id",
      "evaluation_id": "evaluation_id",
      "deleted_at": "2019-12-27T18:11:19.117Z",
      "evaluation_created_at": "2019-12-27T18:11:19.117Z",
      "evaluation_name": "evaluation_name",
      "evaluation_tags": [
        "string"
      ],
      "object": "evaluation_group.member"
    }
  ],
  "metadata": {
    "foo": "bar"
  },
  "object": "evaluation_group",
  "row_identifiers": [
    {
      "column_name": "column_name",
      "evaluation_id": "evaluation_id",
      "object": "evaluation_group.row_identifier"
    }
  ]
}
```
