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

# thread.assigned

> Occurs when a thread is assigned to a team member

<Warning>
  **Deprecated.** Assignees are now managed at the prospect level. Use [`prospect.assigneeChanged`](/webhooks/prospects/prospect-assignee-changed) instead. This event will be removed in a future version.
</Warning>

## When it fires

* A thread is assigned to a team member through the Inbox UI
* A thread is assigned via the API
* A thread's assignment changes from one member to another

<Note>
  Removing an assignee fires [`thread.unassigned`](/webhooks/threads/thread-unassigned) instead.
</Note>

## Payload

<ResponseField name="thread" type="Thread" required>
  The thread associated with this event.

  <Expandable title="properties">
    <ResponseField name="id" type="string">
      The Inbox thread ID.
    </ResponseField>

    <ResponseField name="platform" type="string">
      The platform this thread belongs to. Currently `"twitter"`.
    </ResponseField>

    <ResponseField name="platformId" type="string">
      The platform conversation ID.
    </ResponseField>

    <ResponseField name="done" type="boolean">
      Whether the thread has been archived.
    </ResponseField>

    <ResponseField name="assigneeId" type="string | null">
      The ID of the member assigned to the thread.
    </ResponseField>

    <ResponseField name="lastMessageTimestamp" type="string | null">
      ISO 8601 timestamp of the last message in the thread.
    </ResponseField>

    <ResponseField name="computedSortTimestamp" type="string | null">
      Timestamp used for sorting — last message time or creation date if no messages exist.
    </ResponseField>

    <ResponseField name="createdAt" type="string">
      ISO 8601 timestamp of when the thread was created.
    </ResponseField>

    <ResponseField name="status" type="string">
      `"active"` or `"idle"`. Idle threads are hidden from the main inbox.
    </ResponseField>

    <ResponseField name="variant" type="string">
      `"unencrypted"` or `"xChat"`. Transitions to `"xChat"` once both parties have exchanged messages.
    </ResponseField>

    <ResponseField name="accountLinkId" type="string">
      The ID of the account link (connected X account) associated with this thread.
    </ResponseField>

    <ResponseField name="isSyncing" type="boolean">
      Whether the thread is currently syncing message history from the platform.
    </ResponseField>

    <ResponseField name="isRequest" type="boolean">
      Whether this conversation is a message request.
    </ResponseField>

    <ResponseField name="typingIndicatorsEnabled" type="boolean | null">
      Whether typing indicators are enabled. `null` uses the team default.
    </ResponseField>

    <ResponseField name="lastMessage" type="object | null">
      The most recent message in the thread.

      <Expandable title="properties">
        <ResponseField name="id" type="string">
          The Inbox message ID.
        </ResponseField>

        <ResponseField name="content" type="string">
          The message text content.
        </ResponseField>

        <ResponseField name="authorId" type="string">
          The `accountLinkId` or prospect's `externalId`, depending on who sent the message.
        </ResponseField>

        <ResponseField name="createdAt" type="string">
          ISO 8601 timestamp.
        </ResponseField>

        <ResponseField name="userId" type="string | null">
          The Inbox user ID of the sender, if sent by a team member.
        </ResponseField>

        <ResponseField name="campaignId" type="string | null">
          The campaign ID, if sent by a campaign.
        </ResponseField>
      </Expandable>
    </ResponseField>

    <ResponseField name="prospect" type="object">
      The prospect associated with this thread. See the [Prospect object](/webhooks/overview#prospect-object) for the full shape.
    </ResponseField>
  </Expandable>
</ResponseField>

<ResponseExample>
  ```json Example payload theme={null}
  {
    "id": "ck9v2m5nj0xp4wq7ybftrae8",
    "seq": 19,
    "teamId": "hzcai5t59nn9vsck3rbuepyg",
    "type": "thread.assigned",
    "timestamp": "2025-01-15T14:20:00.000Z",
    "version": "1.0",
    "data": {
      "thread": {
        "id": "l44e15irdq4db30i77cgphhx",
        "platform": "twitter",
        "platformId": "1566123362161725440:1876543210987654321",
        "done": false,
        "assigneeId": "r3km7xj9wq5p2bvnhfdteoly",
        "lastMessageTimestamp": "2025-01-15T14:15:00.000Z",
        "computedSortTimestamp": "2025-01-15T14:15:00.000Z",
        "createdAt": "2025-01-14T09:00:00.000Z",
        "status": "active",
        "variant": "xChat",
        "accountLinkId": "df6jbw4h36qm5d9iu2sgn7kx",
        "isSyncing": false,
        "isRequest": false,
        "typingIndicatorsEnabled": null,
        "lastMessage": {
          "id": "p8rvk2m5j0xn4wq7ybftcael",
          "content": "Can you send over the pricing details?",
          "authorId": "1876543210987654321",
          "createdAt": "2025-01-15T14:15:00.000Z",
          "userId": null,
          "campaignId": null
        },
        "prospect": {
          "platform": "twitter",
          "platformId": "1876543210987654321",
          "externalId": "n7kxqm5d9iu2sgdf6jbw4h36",
          "displayName": "Sarah Chen",
          "username": "sarahchen",
          "handle": "@sarahchen",
          "image": "https://pbs.twimg.com/profile_images/example/photo.jpg",
          "context": {
            "tags": ["l44e15irdq4db30i77cgphhx"],
            "statusId": "x9wq5p2bvnhfdteolyr3km7j",
            "valuation": 2500,
            "notes": "Interested in enterprise plan"
          }
        }
      }
    }
  }
  ```
</ResponseExample>
