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

# Update Conversation

> Documentation for the Update Conversation action for Spruce

![images/spruce.svg](https://mintcdn.com/morfhealth/EU2WCxuXGIUQcziR/images/spruce.svg?fit=max\&auto=format\&n=EU2WCxuXGIUQcziR\&q=85\&s=8a74ebc9757cf4bfebab7b5e33a27182)

# Parameters

**Action** `Parameters`

**parameters**

**Conversation ID** `string` *required*

`ID`
This field maps to the destination API `conversationId` field.

**Assignee Member ID** `string`

This field maps to the destination API `assignToMemberId` field.

**Conversation Tags** `[]string`

This field maps to the destination API `tags` field.

**Delete All Conversation Tags** `bool`

This field maps to the destination API `tags (defaults to false)` field.

**Should Archive** `bool`

This field maps to the destination API `archived (defaults to false)` field.

```json Result Object Example theme={null}
{
  "$result_object_key": {
    "api_url": "https://api.sprucehealth.com/v1/conversations/conv_12345",
    "app_url": "https://app.sprucehealth.com/conversations/conv_12345",
    "archived": null,
    "assigned_to_member_id": "member_67890",
    "associated_contact_ids": [],
    "contact_id": "entity_0E5QDGJC03000",
    "conversation_type": "sms",
    "created_at": "2025-02-11T08:22:10Z",
    "external_participants": [
      {
        "contact": null,
        "display_names": "John Doe",
        "endpoint": {
          "channel": "sms",
          "display_value": "(555) 123-4567",
          "endpoint_id": null,
          "is_internal": null,
          "labels": "mobile",
          "object": "endpoint",
          "raw_value": {
            "email": "patient@example.com",
            "phone": "+15551231234",
            "value": "secure_channel_id"
          }
        }
      }
    ],
    "id": "conv_12345",
    "internal_endpoint": {
      "channel": "sms",
      "display_value": "(555) 123-4567",
      "endpoint_id": null,
      "is_internal": null,
      "labels": "mobile",
      "object": "endpoint",
      "raw_value": {
        "email": "patient@example.com",
        "phone": "+15551231234",
        "value": "secure_channel_id"
      }
    },
    "internal_member_ids": [],
    "is_read_only": null,
    "last_message_at": "2025-02-11T08:22:10Z",
    "object": "conversation",
    "subtitle": "Follow-up discussion",
    "tags": [
      {
        "id": "tag_0E5QDGJC03000",
        "value": "high-priority"
      }
    ],
    "title": "Patient Check-in"
  }
}
```

```json Result Object Description theme={null}
{
  "$result_object_key": {
    "api_url": "API URL for this conversation.",
    "app_url": "App URL for this conversation.",
    "archived": "Whether this conversation is archived.",
    "assigned_to_member_id": "ID of the member assigned to this conversation.",
    "associated_contact_ids": "Contact IDs associated with this conversation.",
    "contact_id": "Unique identifier for the contact in the Spruce system that is the external participant in this conversation",
    "conversation_type": "Type of conversation (sms, email, etc.).",
    "created_at": "Timestamp when the conversation was created.",
    "external_participants": {
      "contact": "Contact ID of the external participant.",
      "display_names": "Display names for the external participant.",
      "endpoint": {
        "channel": "Communication channel type.",
        "display_value": "Human-readable display value.",
        "endpoint_id": "Unique identifier for the endpoint.",
        "is_internal": "Whether this is an internal endpoint.",
        "labels": "Labels associated with the endpoint.",
        "object": "Object type identifier.",
        "raw_value": {
          "email": "Email address value.",
          "phone": "Phone number value.",
          "value": "Secure channel identifier."
        }
      }
    },
    "id": "Unique identifier for the conversation in the Spruce system.",
    "internal_endpoint": {
      "channel": "Communication channel type.",
      "display_value": "Human-readable display value.",
      "endpoint_id": "Unique identifier for the endpoint.",
      "is_internal": "Whether this is an internal endpoint.",
      "labels": "Labels associated with the endpoint.",
      "object": "Object type identifier.",
      "raw_value": {
        "email": "Email address value.",
        "phone": "Phone number value.",
        "value": "Secure channel identifier."
      }
    },
    "internal_member_ids": "Internal member IDs participating in this conversation.",
    "is_read_only": "Whether this conversation is read-only.",
    "last_message_at": "Timestamp of the last message in this conversation.",
    "object": "Object type identifier.",
    "subtitle": "Subtitle for the conversation.",
    "tags": {
      "id": "Unique identifier for the tag.",
      "value": "Tag value."
    },
    "title": "Title of the conversation."
  }
}
```

### Result Object Field Details

You can use the result of the action's data as inputs to downstream workflow actions.

Each fetch action requires an object name, which nests the action's result data inside the downstream data context in the workflow. See [Passing Data Between Actions](https://docs.morf.health/docs/knowledge_base/passing_data_between_actions.md) for how to set it and reference the result from downstream nodes.

Here we demonstrate how to refer to this data using the prefix `$result_object_key`.

**Conversation** `Fetch Action Response Object`

**fields**

**id** `string` *required*

`ID` Unique identifier for the conversation in the Spruce system.

```json CEL theme={null}
$result_object_key.id
```

```json Example theme={null}
"conv_12345"
```

**contact\_id** `string` *required*

`ID` Unique identifier for the contact in the Spruce system that is the external participant in this conversation

```json CEL theme={null}
$result_object_key.contact_id
```

```json Example theme={null}
"entity_0E5QDGJC03000"
```

**api\_url** `string`

API URL for this conversation.

```json CEL theme={null}
$result_object_key.api_url
```

```json Example theme={null}
"https://api.sprucehealth.com/v1/conversations/conv_12345"
```

**app\_url** `string`

App URL for this conversation.

```json CEL theme={null}
$result_object_key.app_url
```

```json Example theme={null}
"https://app.sprucehealth.com/conversations/conv_12345"
```

**archived** `bool` *required*

Whether this conversation is archived.

```json CEL theme={null}
$result_object_key.archived
```

```json Example theme={null}
null
```

**assigned\_to\_member\_id** `string`

`ID` ID of the member assigned to this conversation.

```json CEL theme={null}
$result_object_key.assigned_to_member_id
```

```json Example theme={null}
"member_67890"
```

**associated\_contact\_ids** `[]string` *required*

`ID` Contact IDs associated with this conversation.

```json CEL theme={null}
$result_object_key.associated_contact_ids
```

```json Example theme={null}
[]
```

**created\_at** `timing.v1.Timestamp` *required*

Timestamp when the conversation was created.

```json CEL theme={null}
$result_object_key.created_at
```

```json Example theme={null}
"2025-02-11T08:22:10Z"
```

**external\_participants** `[]object` *required*

External participants in the conversation.

```json CEL theme={null}
$result_object_key.external_participants
```

```json Example theme={null}
[
{
"contact": null,
"display_names": "John Doe",
"endpoint": {
"channel": "sms",
"display_value": "(555) 123-4567",
"endpoint_id": null,
"is_internal": null,
"labels": "mobile",
"object": "endpoint",
"raw_value": {
  "email": "patient@example.com",
  "phone": "+15551231234",
  "value": "secure_channel_id"
}
}
}
]
```

**external\_participants.map(x, x.contact)** `[]string` *required*

`ID` Mapped array of: Contact ID of the external participant.

```json CEL theme={null}
$result_object_key.external_participants.map(x, x.contact)
```

```json Example theme={null}
[
null
]
```

**external\_participants.map(x, x.display\_names)** `[]bool` *required*

`PII` Mapped array of: Display names for the external participant.

```json CEL theme={null}
$result_object_key.external_participants.map(x, x.display_names)
```

```json Example theme={null}
[
"John Doe"
]
```

**external\_participants.map(x, x.endpoint)** `[]bool` *required*

Mapped array of: Communication endpoint for the participant.

```json CEL theme={null}
$result_object_key.external_participants.map(x, x.endpoint)
```

```json Example theme={null}
[
{
"channel": "sms",
"display_value": "(555) 123-4567",
"endpoint_id": null,
"is_internal": null,
"labels": "mobile",
"object": "endpoint",
"raw_value": {
"email": "patient@example.com",
"phone": "+15551231234",
"value": "secure_channel_id"
}
}
]
```

**internal\_endpoint** `object`

Internal endpoint for the conversation.

```json CEL theme={null}
$result_object_key.internal_endpoint
```

```json Example theme={null}
{
"channel": "sms",
"display_value": "(555) 123-4567",
"endpoint_id": null,
"is_internal": null,
"labels": "mobile",
"object": "endpoint",
"raw_value": {
"email": "patient@example.com",
"phone": "+15551231234",
"value": "secure_channel_id"
}
}
```

**internal\_endpoint.channel** `string`

Communication channel type.

```json CEL theme={null}
$result_object_key.internal_endpoint.channel
```

```json Example theme={null}
"sms"
```

**internal\_endpoint.display\_value** `string`

Human-readable display value.

```json CEL theme={null}
$result_object_key.internal_endpoint.display_value
```

```json Example theme={null}
"(555) 123-4567"
```

**internal\_endpoint.endpoint\_id** `string`

`ID` Unique identifier for the endpoint.

```json CEL theme={null}
$result_object_key.internal_endpoint.endpoint_id
```

```json Example theme={null}
null
```

**internal\_endpoint.is\_internal** `bool`

Whether this is an internal endpoint.

```json CEL theme={null}
$result_object_key.internal_endpoint.is_internal
```

```json Example theme={null}
null
```

**internal\_endpoint.labels** `[]string`

Labels associated with the endpoint.

```json CEL theme={null}
$result_object_key.internal_endpoint.labels
```

```json Example theme={null}
"mobile"
```

**internal\_endpoint.object** `string`

Object type identifier.

```json CEL theme={null}
$result_object_key.internal_endpoint.object
```

```json Example theme={null}
"endpoint"
```

**internal\_endpoint.raw\_value** `object`

Raw endpoint value with type-specific data.

```json CEL theme={null}
$result_object_key.internal_endpoint.raw_value
```

```json Example theme={null}
{
"email": "patient@example.com",
"phone": "+15551231234",
"value": "secure_channel_id"
}
```

**internal\_endpoint.raw\_value.email** `string`

`PII` Email address value.

```json CEL theme={null}
$result_object_key.internal_endpoint.raw_value.email
```

```json Example theme={null}
"patient@example.com"
```

**internal\_endpoint.raw\_value.phone** `string`

`PII` Phone number value.

```json CEL theme={null}
$result_object_key.internal_endpoint.raw_value.phone
```

```json Example theme={null}
"+15551231234"
```

**internal\_endpoint.raw\_value.value** `string`

`PII` Secure channel identifier.

```json CEL theme={null}
$result_object_key.internal_endpoint.raw_value.value
```

```json Example theme={null}
"secure_channel_id"
```

**internal\_member\_ids** `[]string` *required*

`ID` Internal member IDs participating in this conversation.

```json CEL theme={null}
$result_object_key.internal_member_ids
```

```json Example theme={null}
[]
```

**is\_read\_only** `bool` *required*

Whether this conversation is read-only.

```json CEL theme={null}
$result_object_key.is_read_only
```

```json Example theme={null}
null
```

**last\_message\_at** `timing.v1.Timestamp`

Timestamp of the last message in this conversation.

```json CEL theme={null}
$result_object_key.last_message_at
```

```json Example theme={null}
"2025-02-11T08:22:10Z"
```

**object** `string` *required*

Object type identifier.

```json CEL theme={null}
$result_object_key.object
```

```json Example theme={null}
"conversation"
```

**subtitle** `string`

Subtitle for the conversation.

```json CEL theme={null}
$result_object_key.subtitle
```

```json Example theme={null}
"Follow-up discussion"
```

**tags** `[]object` *required*

Tags associated with the conversation.

```json CEL theme={null}
$result_object_key.tags
```

```json Example theme={null}
[
{
"id": "tag_0E5QDGJC03000",
"value": "high-priority"
}
]
```

**tags.map(x, x.id)** `[]string` *required*

`ID` Mapped array of: Unique identifier for the tag.

```json CEL theme={null}
$result_object_key.tags.map(x, x.id)
```

```json Example theme={null}
[
"tag_0E5QDGJC03000"
]
```

**tags.map(x, x.value)** `[]string` *required*

Mapped array of: Tag value.

```json CEL theme={null}
$result_object_key.tags.map(x, x.value)
```

```json Example theme={null}
[
"high-priority"
]
```

**title** `string`

Title of the conversation.

```json CEL theme={null}
$result_object_key.title
```

```json Example theme={null}
"Patient Check-in"
```

**conversation\_type** `string`

Type of conversation (sms, email, etc.).

```json CEL theme={null}
$result_object_key.conversation_type
```

```json Example theme={null}
"sms"
```


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.