---
title: "Assign Email Thread Owner"
method: PUT
path: "/api/v1/email-threads/{email_thread_id}/owner"
tags: ["log-ownership"]
---

# Assign Email Thread Owner

`PUT /api/v1/email-threads/{email_thread_id}/owner`

Manually assign/override the outcome owner on an email thread.

PR 21. ``EmailThread`` has carried the owner triple since it shipped, but the
only writer was the CRM sync — so an operator could not correct an
attribution, and ``bind_thread_ownership``'s "an operator reassigned this by
hand" guard was unreachable. This route makes it reachable.

## Path parameters

- `email_thread_id` string, uuid, required

## Request body

- LogOwnerAssignRequest
  - `outcome_agent_ref` string, required

## Response `200`

Successful Response

- LogOwnerAssignResponse
  - `outcome_agent_ref` string, required
  - `outcome_agent_ref_set_by_user_id` string, uuid, required
  - `outcome_agent_ref_set_at` string, date-time, required

## Other responses

- `404` — Log or human agent not found
- `422` — Invalid outcome_agent_ref format

---

[API](https://skmtc.dev/getanana/apis/cleon-api.md) · [All operations](https://skmtc.dev/getanana/apis/cleon-api/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/getanana/cleon-api/revisions/c0f54348e251/schema)
