## Get a single evaluation item

`evaluation_items.retrieve(strevaluation_item_id, EvaluationItemRetrieveParams**kwargs)  -> EvaluationItem`

**get** `/v5/evaluation-items/{evaluation_item_id}`

Retrieve a single evaluation item by its ID within the caller's account.

By default only non-archived items are returned; pass `include_archived=true` to
also retrieve an item that has been archived. The response merges the item's cached
task results into its `data` field and exposes a `task_errors` map keyed by task
alias, so a task that failed on this item surfaces as an entry there rather than as a
request error. Use this to inspect one item's input data and per-task results; to page
through many items, use the list endpoint instead. The request fails if no item with
the given ID exists in the caller's account.

### Parameters

- `evaluation_item_id: str`

- `include_archived: Optional[bool]`

### Returns

- `class EvaluationItem: …`

  - `id: str`

    The unique identifier of the entity.

  - `created_at: datetime`

    The date and time when the entity was created in ISO format.

  - `created_by: Identity`

    The identity that created the entity.

    - `id: str`

    - `type: Literal["user", "service_account"]`

      - `"user"`

      - `"service_account"`

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

      - `"identity"`

  - `data: Dict[str, object]`

  - `evaluation_id: str`

  - `archived_at: Optional[datetime]`

    The date and time when the entity was archived in ISO format.

  - `dataset_item_id: Optional[str]`

  - `dataset_item_version_num: Optional[int]`

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

  - `object: Optional[Literal["evaluation.item"]]`

    - `"evaluation.item"`

  - `task_errors: Optional[Dict[str, TaskError]]`

    Map of task alias to error info.

    - `message: str`

      Error message

    - `type: str`

      Error type/category

  - `task_result_statuses: Optional[Dict[str, Literal["completed", "skipped", "errored", 2 more]]]`

    Per-alias task-result lifecycle status derived from `task_result_cache`. Present when at least one alias has a recorded status; `null` for legacy rows with an empty cache. Renderers use this to distinguish `prefilled` from `completed` on the wire (values themselves are already merged into `data` by `merge_task_result_cache_into_data`).

    - `"completed"`

    - `"skipped"`

    - `"errored"`

    - `"pending"`

    - `"prefilled"`

### 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_item = client.evaluation_items.retrieve(
    evaluation_item_id="evaluation_item_id",
)
print(evaluation_item.id)
```

#### Response

```json
{
  "id": "id",
  "created_at": "2019-12-27T18:11:19.117Z",
  "created_by": {
    "id": "id",
    "type": "user",
    "object": "identity"
  },
  "data": {
    "foo": "bar"
  },
  "evaluation_id": "evaluation_id",
  "archived_at": "2019-12-27T18:11:19.117Z",
  "dataset_item_id": "dataset_item_id",
  "dataset_item_version_num": 0,
  "files": {
    "foo": "string"
  },
  "object": "evaluation.item",
  "task_errors": {
    "foo": {
      "message": "message",
      "type": "type"
    }
  },
  "task_result_statuses": {
    "foo": "completed"
  }
}
```
