# Conversation

Location: [gRPC API](https://developer.m-files.com/APIs/gRPC-API/index.md) > [Reference](https://developer.m-files.com/APIs/gRPC-API/Reference/index.md) > [Messages](https://developer.m-files.com/APIs/gRPC-API/Reference/Messages/index.md)

HTML version: https://developer.m-files.com/APIs/gRPC-API/Reference/Messages/MFiles.Conversation/

A conversation of one user, for example with Aino.

- **Full name:** `MFiles.Conversation`
- **Proto file:** [`mfiles/structs.proto`](https://developer.m-files.com/APIs/gRPC-API/downloads/proto/mfiles/structs.proto)

<a id="fields"></a>

## Fields

| Field | Type | Number | Description |
|---|---|---|---|
| <a id="f-id"></a>`id` | `uint32` | 1 | The ID of the conversation, assigned by the server. |
| <a id="f-user_id"></a>`user_id` | `uint32` | 2 | The ID of the user account that owns the conversation. Set by the server. |
| <a id="f-type"></a>`type` | [`ConversationType`](https://developer.m-files.com/APIs/gRPC-API/Reference/Enums/MFiles.ConversationType/index.md) | 3 | The kind of conversation. Set when the conversation is created. Values: `CONVERSATION_TYPE_UNDEFINED` (0), `CONVERSATION_TYPE_AINO` (1). |
| <a id="f-title"></a>`title` | `string` | 4 | The title of the conversation, as plain text. |
| <a id="f-sort_key"></a>`sort_key` | `uint32` | 5 | Orders conversations; newer conversations have larger values. Used for paging. |
| <a id="f-created"></a>`created` | [`google.protobuf.Timestamp`](https://protobuf.dev/reference/protobuf/google.protobuf/#timestamp) | 6 | When the conversation was created (UTC). |
| <a id="f-modified"></a>`modified` | [`google.protobuf.Timestamp`](https://protobuf.dev/reference/protobuf/google.protobuf/#timestamp) | 7 | When the conversation was created or last renamed (UTC). |

<a id="used-by-methods"></a>

## Used by methods

- [IRPCConversationOperations.AddOrUpdateConversation](https://developer.m-files.com/APIs/gRPC-API/Reference/MFiles.IRPCConversationOperations/AddOrUpdateConversation/index.md): Creates a conversation, or renames an existing one of the caller.
- [IRPCConversationOperations.GetConversationById](https://developer.m-files.com/APIs/gRPC-API/Reference/MFiles.IRPCConversationOperations/GetConversationById/index.md): Gets one of the caller's conversations by ID.
- [IRPCConversationOperations.GetConversations](https://developer.m-files.com/APIs/gRPC-API/Reference/MFiles.IRPCConversationOperations/GetConversations/index.md): Gets the caller's conversations, newest first, up to 100 per call.

<a id="used-in-fields"></a>

## Used in fields

- [`GetConversationByIdResponse.updated_conversation`](https://developer.m-files.com/APIs/gRPC-API/Reference/MFiles.IRPCConversationOperations/GetConversationById/index.md#response): The requested conversation of the caller.
- [`GetConversationsResponse.conversations`](https://developer.m-files.com/APIs/gRPC-API/Reference/MFiles.IRPCConversationOperations/GetConversations/index.md#response): Up to 100 conversations in descending `sort_key` order.
- [`AddOrUpdateConversationRequest.conversation`](https://developer.m-files.com/APIs/gRPC-API/Reference/MFiles.IRPCConversationOperations/AddOrUpdateConversation/index.md#request): The conversation. Set `title` and, for a new one, `type`; set `id` to rename an existing one.
- [`AddOrUpdateConversationResponse.updated_conversation`](https://developer.m-files.com/APIs/gRPC-API/Reference/MFiles.IRPCConversationOperations/AddOrUpdateConversation/index.md#response): The conversation as stored.
