> ## Documentation Index
> Fetch the complete documentation index at: https://docs.starlight-search.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Data types

> Reference for all data types returned by ReflectClient methods.

<Note>
  This reference is auto-generated from SDK docstrings.
  Run `python scripts/generate_api_docs.py` to regenerate.
</Note>

Types are represented as Python models (Pydantic for API contracts, plus SDK dataclasses where applicable).

## MemoryResponse

Returned by `query_memories` and contained in `AugmentedTask.memories`.

```python theme={null}
class ... (BaseModel)
class MemoryResponse:
    id: str
    task: str
    reflection: str
    q_value: float = 0.5
    similarity: float = 0.0
    score: float = 0.0
    success: bool | None = None
    summary: str = ''
    key_mistake: str = ''
    correct_action: str = ''
    applicable_tools: list[str] = field(default_factory=list)
    guidance: str = ''
    tools_used: list[str] = field(default_factory=list)
```

| Field              | Type        | Description |   |
| ------------------ | ----------- | ----------- | - |
| `id`               | `str`       |             |   |
| `task`             | `str`       |             |   |
| `reflection`       | `str`       |             |   |
| `q_value`          | `float`     |             |   |
| `similarity`       | `float`     |             |   |
| `score`            | `float`     |             |   |
| `success`          | \`bool      | None\`      |   |
| `summary`          | `str`       |             |   |
| `key_mistake`      | `str`       |             |   |
| `correct_action`   | `str`       |             |   |
| `applicable_tools` | `list[str]` |             |   |
| `guidance`         | `str`       |             |   |
| `tools_used`       | `list[str]` |             |   |

## AugmentedTask

Returned by `augment_with_memories`.

```python theme={null}
@dataclass(slots=True)
class AugmentedTask:
    augmented_task: str
    memories: list[MemoryResponse]
```

| Field            | Type                   | Description                                              |
| ---------------- | ---------------------- | -------------------------------------------------------- |
| `augmented_task` | `str`                  | The original task with formatted memory blocks appended. |
| `memories`       | `list[MemoryResponse]` | List of MemoryResponse objects that were used.           |

## TraceCreateResponse

Returned by `create_trace` and `create_trace_async`.

```python theme={null}
class ... (BaseModel)
class TraceCreateResponse:
    trace_id: str
    ingest_status: Literal[queued, completed]
```

| Field           | Type                         | Description |
| --------------- | ---------------------------- | ----------- |
| `trace_id`      | `str`                        |             |
| `ingest_status` | `Literal[queued, completed]` |             |

## TraceResponse

Returned by `get_trace`, `list_traces`, `review_trace`, `wait_for_trace`, and `create_trace_and_wait`.

```python theme={null}
class ... (BaseModel)
class TraceResponse:
    id: str
    task: str
    trajectory: list[TrajectoryMessage]
    final_response: str
    retrieved_memory_ids: list[str]
    model: str | None = None
    metadata: dict[str, object] = field(default_factory=dict)
    review_status: Literal[pending, reviewed]
    ingest_status: Literal[queued, processing, completed, failed]
    ingest_attempts: int = 0
    last_ingest_error: str | None = None
    created_memory_id: str | None = None
    review: reflect_contracts.models.ReviewResponse | None = None
```

| Field                  | Type                                             | Description |   |
| ---------------------- | ------------------------------------------------ | ----------- | - |
| `id`                   | `str`                                            |             |   |
| `task`                 | `str`                                            |             |   |
| `trajectory`           | `list[TrajectoryMessage]`                        |             |   |
| `final_response`       | `str`                                            |             |   |
| `retrieved_memory_ids` | `list[str]`                                      |             |   |
| `model`                | \`str                                            | None\`      |   |
| `metadata`             | `dict[str, object]`                              |             |   |
| `review_status`        | `Literal[pending, reviewed]`                     |             |   |
| `ingest_status`        | `Literal[queued, processing, completed, failed]` |             |   |
| `ingest_attempts`      | `int`                                            |             |   |
| `last_ingest_error`    | \`str                                            | None\`      |   |
| `created_memory_id`    | \`str                                            | None\`      |   |
| `review`               | \`reflect\_contracts.models.ReviewResponse       | None\`      |   |

## ReviewResponse

Nested in `TraceResponse.review`.

```python theme={null}
class ... (BaseModel)
class ReviewResponse:
    id: str
    trace_id: str
    result: Literal[pass, fail]
    feedback_text: str | None = None
    mode: Literal[inline, deferred]
```

| Field           | Type                        | Description |   |
| --------------- | --------------------------- | ----------- | - |
| `id`            | `str`                       |             |   |
| `trace_id`      | `str`                       |             |   |
| `result`        | `Literal[pass, fail]`       |             |   |
| `feedback_text` | \`str                       | None\`      |   |
| `mode`          | `Literal[inline, deferred]` |             |   |

## ApiKeyResponse

Returned by `list_api_keys`, `revoke_api_key`, and nested in `ApiKeyCreateResponse.key`.

```python theme={null}
class ... (BaseModel)
class ApiKeyResponse:
    id: str
    public_id: str
    label: str
    scopes: list[str]
    is_master: bool = False
    environment: Literal[live, test]
    status: Literal[active, revoked]
    created_at: str | None = None
    last_used_at: str | None = None
    revoked_at: str | None = None
```

| Field          | Type                       | Description |   |
| -------------- | -------------------------- | ----------- | - |
| `id`           | `str`                      |             |   |
| `public_id`    | `str`                      |             |   |
| `label`        | `str`                      |             |   |
| `scopes`       | `list[str]`                |             |   |
| `is_master`    | `bool`                     |             |   |
| `environment`  | `Literal[live, test]`      |             |   |
| `status`       | `Literal[active, revoked]` |             |   |
| `created_at`   | \`str                      | None\`      |   |
| `last_used_at` | \`str                      | None\`      |   |
| `revoked_at`   | \`str                      | None\`      |   |

## ApiKeyCreateResponse

Returned by `create_api_key`.

```python theme={null}
class ... (BaseModel)
class ApiKeyCreateResponse:
    api_key: str
    key: ApiKeyResponse
```

| Field     | Type             | Description |
| --------- | ---------------- | ----------- |
| `api_key` | `str`            |             |
| `key`     | `ApiKeyResponse` |             |

## BootstrapResponse

Returned by `ReflectClient.bootstrap`.

```python theme={null}
class ... (BaseModel)
class BootstrapResponse:
    user_id: str
    project_id: str
    api_key: str
```

| Field        | Type  | Description |
| ------------ | ----- | ----------- |
| `user_id`    | `str` |             |
| `project_id` | `str` |             |
| `api_key`    | `str` |             |
