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

Chats.List(ctx, req)

chats, err := client.Chats.List(ctx, vzaps.ChatListRequest{
	InstanceScopedRequest: vzaps.InstanceScopedRequest{
		InstanceID:    "VZ...",
		InstanceToken: "instance-token",
	},
	Page:     1,
	PageSize: 20,
})
Return: page { page, page_size, total, total_pages, content[] } with chat metadata per item.

Chats.Get(ctx, req)

chat, err := client.Chats.Get(ctx, vzaps.ChatRequest{
	InstanceScopedRequest: vzaps.InstanceScopedRequest{
		InstanceID:    "VZ...",
		InstanceToken: "instance-token",
	},
	Phone: "5511999999999",
})
Return: InstanceChatMetadataphone, jid, name, flags (archived, pinned, muted, etc.) and last message when available.

Chats.Archive(ctx, req)

_, err := client.Chats.Archive(ctx, vzaps.ChatRequest{
	InstanceScopedRequest: vzaps.InstanceScopedRequest{
		InstanceID:    "VZ...",
		InstanceToken: "instance-token",
	},
	Phone: "5511999999999",
})
Return: { status: "ok" }.

Chats.Unarchive(ctx, req)

_, err := client.Chats.Unarchive(ctx, vzaps.ChatRequest{
	InstanceScopedRequest: vzaps.InstanceScopedRequest{
		InstanceID:    "VZ...",
		InstanceToken: "instance-token",
	},
	Phone: "5511999999999",
})
Return: { status: "ok" }.

Chats.Mute(ctx, req)

_, err := client.Chats.Mute(ctx, vzaps.ChatMuteRequest{
	ChatRequest: vzaps.ChatRequest{
		InstanceScopedRequest: vzaps.InstanceScopedRequest{
			InstanceID:    "VZ...",
			InstanceToken: "instance-token",
		},
		Phone: "5511999999999",
	},
	DurationSeconds: 3600,
})
Return: { status: "ok" }.

Chats.Unmute(ctx, req)

_, err := client.Chats.Unmute(ctx, vzaps.ChatRequest{
	InstanceScopedRequest: vzaps.InstanceScopedRequest{
		InstanceID:    "VZ...",
		InstanceToken: "instance-token",
	},
	Phone: "5511999999999",
})
Return: { status: "ok" }.

Chats.Pin(ctx, req)

_, err := client.Chats.Pin(ctx, vzaps.ChatRequest{
	InstanceScopedRequest: vzaps.InstanceScopedRequest{
		InstanceID:    "VZ...",
		InstanceToken: "instance-token",
	},
	Phone: "5511999999999",
})
Return: { status: "ok" }.

Chats.Unpin(ctx, req)

_, err := client.Chats.Unpin(ctx, vzaps.ChatRequest{
	InstanceScopedRequest: vzaps.InstanceScopedRequest{
		InstanceID:    "VZ...",
		InstanceToken: "instance-token",
	},
	Phone: "5511999999999",
})
Return: { status: "ok" }.

Chats.Read(ctx, req)

_, err := client.Chats.Read(ctx, vzaps.ChatRequest{
	InstanceScopedRequest: vzaps.InstanceScopedRequest{
		InstanceID:    "VZ...",
		InstanceToken: "instance-token",
	},
	Phone: "5511999999999",
})
Return: { status: "ok" }.

Chats.Unread(ctx, req)

_, err := client.Chats.Unread(ctx, vzaps.ChatRequest{
	InstanceScopedRequest: vzaps.InstanceScopedRequest{
		InstanceID:    "VZ...",
		InstanceToken: "instance-token",
	},
	Phone: "5511999999999",
})
Return: { status: "ok" }.

Chats.Clear(ctx, req)

_, err := client.Chats.Clear(ctx, vzaps.ChatClearRequest{
	ChatRequest: vzaps.ChatRequest{
		InstanceScopedRequest: vzaps.InstanceScopedRequest{
			InstanceID:    "VZ...",
			InstanceToken: "instance-token",
		},
		Phone: "5511999999999",
	},
	DeleteMedia: false,
})
Return: { status: "ok" }.

Chats.Delete(ctx, req)

_, err := client.Chats.Delete(ctx, vzaps.ChatDeleteRequest{
	ChatRequest: vzaps.ChatRequest{
		InstanceScopedRequest: vzaps.InstanceScopedRequest{
			InstanceID:    "VZ...",
			InstanceToken: "instance-token",
		},
		Phone: "5511999999999",
	},
	DeleteMedia: false,
})
Return: { status: "ok" }.

Chats.SetExpiration(ctx, req)

_, err := client.Chats.SetExpiration(ctx, vzaps.ChatExpirationRequest{
	ChatRequest: vzaps.ChatRequest{
		InstanceScopedRequest: vzaps.InstanceScopedRequest{
			InstanceID:    "VZ...",
			InstanceToken: "instance-token",
		},
		Phone: "5511999999999",
	},
	Expiration: "7_DAYS",
})
Return: { status: "ok" }. Accepted values for Expiration: 24_HOURS, 7_DAYS, 90_DAYS, OFF.