Pular para o conteúdo principal
Use users e contacts para consultar perfis no WhatsApp e gerenciar contatos da instância. Para instâncias, veja Instâncias e billing.

Contatos

Contacts.List(ctx, instanceID, options)

contacts, err := client.Contacts.List(ctx, "VZ...", vzaps.InstanceOptions{
	InstanceToken: "instance-token",
})
Retorno: envelope { code, success, data } com data[] de contatos (jid, Name, IsInWhatsapp, etc.).

Contacts.Add(ctx, req)

_, err := client.Contacts.Add(ctx, vzaps.ContactAddRequest{
	InstanceScopedRequest: vzaps.InstanceScopedRequest{
		InstanceID:    "VZ...",
		InstanceToken: "instance-token",
	},
	Phone:     "5511888888888",
	FirstName: "Maria",
	FullName:  "Maria Silva",
})
Retorno: envelope { code, success, data } com mensagem de confirmacao (ex.: "Contact added").

Usuários

Users.Info(ctx, req)

info, err := client.Users.Info(ctx, vzaps.UserPhonesRequest{
	InstanceScopedRequest: vzaps.InstanceScopedRequest{
		InstanceID:    "VZ...",
		InstanceToken: "instance-token",
	},
	Phone: "5511999999999",
})
Retorno: envelope { code, success, data } com perfil do usuario (VerifiedName, Status, PictureId, etc.).

Users.Check(ctx, req)

exists, err := client.Users.Check(ctx, vzaps.UserPhonesRequest{
	InstanceScopedRequest: vzaps.InstanceScopedRequest{
		InstanceID:    "VZ...",
		InstanceToken: "instance-token",
	},
	Phone: "5511999999999",
})
Retorno: envelope { code, success, data.users[] } com phone, exists, jid por numero consultado.

Users.Avatar(ctx, req)

avatar, err := client.Users.Avatar(ctx, vzaps.UserAvatarRequest{
	InstanceScopedRequest: vzaps.InstanceScopedRequest{
		InstanceID:    "VZ...",
		InstanceToken: "instance-token",
	},
	Phone: "5511999999999",
})
Retorno: envelope { code, success, data } com base64 e mimetype da foto.

Users.Contacts(ctx, instanceID, options)

contacts, err := client.Users.Contacts(ctx, "VZ...", vzaps.InstanceOptions{
	InstanceToken: "instance-token",
})
Retorno: envelope { code, success, data } — mapa JID → contato (FirstName, FullName, PushName, etc.).