Skip to main content
Use chats to list conversations and apply actions such as archive, mute, pin, and expiration. For instances, see Instances and billing. For session, see Session.

Chats

client.Chats.ListAsync<TResponse>(request)

await client.Chats.ListAsync<object>(new ChatListRequest { InstanceId = "VZ...", InstanceToken = "instance-token", Page = 1, PageSize = 20 });
Return: page { Page, PageSize, Total, TotalPages, Content[] } with chat metadata per item.

client.Chats.GetAsync<TResponse>(request)

await client.Chats.GetAsync<object>(new ChatRequest { InstanceId = "VZ...", InstanceToken = "instance-token", Phone = "5511999999999" });
Return: InstanceChatMetadataPhone, Jid, Name, flags (archived, pinned, muted, etc.) and last message when available.

client.Chats.ArchiveAsync<TResponse>(request)

await client.Chats.ArchiveAsync<object>(new ChatRequest { InstanceId = "VZ...", InstanceToken = "instance-token", Phone = "5511999999999" });
Return: { Status: "ok" }.

client.Chats.UnarchiveAsync<TResponse>(request)

await client.Chats.UnarchiveAsync<object>(new ChatRequest { InstanceId = "VZ...", InstanceToken = "instance-token", Phone = "5511999999999" });
Return: { Status: "ok" }.

client.Chats.MuteAsync<TResponse>(request)

await client.Chats.MuteAsync<object>(new ChatMuteRequest { InstanceId = "VZ...", InstanceToken = "instance-token", Phone = "5511999999999", DurationSeconds = 3600 });
Return: { Status: "ok" }.

client.Chats.UnmuteAsync<TResponse>(request)

await client.Chats.UnmuteAsync<object>(new ChatRequest { InstanceId = "VZ...", InstanceToken = "instance-token", Phone = "5511999999999" });
Return: { Status: "ok" }.

client.Chats.PinAsync<TResponse>(request)

await client.Chats.PinAsync<object>(new ChatRequest { InstanceId = "VZ...", InstanceToken = "instance-token", Phone = "5511999999999" });
Return: { Status: "ok" }.

client.Chats.UnpinAsync<TResponse>(request)

await client.Chats.UnpinAsync<object>(new ChatRequest { InstanceId = "VZ...", InstanceToken = "instance-token", Phone = "5511999999999" });
Return: { Status: "ok" }.

client.Chats.ReadAsync<TResponse>(request)

await client.Chats.ReadAsync<object>(new ChatRequest { InstanceId = "VZ...", InstanceToken = "instance-token", Phone = "5511999999999" });
Return: { Status: "ok" }.

client.Chats.UnreadAsync<TResponse>(request)

await client.Chats.UnreadAsync<object>(new ChatRequest { InstanceId = "VZ...", InstanceToken = "instance-token", Phone = "5511999999999" });
Return: { Status: "ok" }.

client.Chats.ClearAsync<TResponse>(request)

await client.Chats.ClearAsync<object>(new ChatClearRequest { InstanceId = "VZ...", InstanceToken = "instance-token", Phone = "5511999999999", DeleteMedia = false });
Return: { Status: "ok" }.

client.Chats.DeleteAsync<TResponse>(request)

await client.Chats.DeleteAsync<object>(new ChatDeleteRequest { InstanceId = "VZ...", InstanceToken = "instance-token", Phone = "5511999999999", DeleteMedia = false });
Return: { Status: "ok" }.

client.Chats.SetExpirationAsync<TResponse>(request)

await client.Chats.SetExpirationAsync<object>(new ChatExpirationRequest
{
    InstanceId = "VZ...",
    InstanceToken = "instance-token",
    Phone = "5511999999999",
    Expiration = "7_DAYS",
});
Return: { Status: "ok" }.