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

# Usuários e contatos

> Consultar usuários, avatar e gerenciar contatos da instância

Use `client.users()` e `client.contacts()` para consultar perfis no WhatsApp e gerenciar contatos da instância.

Para instâncias, veja [Instâncias e billing](/pt-BR/sdk/java/instances-and-billing).

## Contatos

### `client.contacts().list(instanceId, options)`

```java theme={null}
var options = InstanceRequestOptions.builder().instanceToken("instance-token").build();
JsonNode contacts = client.contacts().list("VZ...", options);
```

**Retorno:** envelope `{ code, success, data }` com `data[]` de contatos (`jid`, `Name`, `IsInWhatsapp`, etc.).

### `client.contacts().add(request)`

```java theme={null}
JsonNode added = client.contacts().add(
    GenericInstanceRequest.builder()
        .instanceId("VZ...")
        .instanceToken("instance-token")
        .build());
```

**Retorno:** envelope `{ code, success, data }` com mensagem de confirmacao (ex.: `"Contact added"`).

Passe `phone`, `firstName` e `fullName` no corpo via `request` ou DTO equivalente.

## Usuários

### `client.users().info(request)`

```java theme={null}
JsonNode info = client.users().info(
    GenericInstanceRequest.builder()
        .instanceId("VZ...")
        .instanceToken("instance-token")
        .build());
```

**Retorno:** envelope `{ code, success, data }` com perfil do usuario (`VerifiedName`, `Status`, `PictureId`, etc.).

### `client.users().check(request)`

```java theme={null}
JsonNode exists = client.users().check(request);
```

**Retorno:** envelope `{ code, success, data.users[] }` com `phone`, `exists`, `jid` por numero consultado.

### `client.users().avatar(request)`

```java theme={null}
JsonNode avatar = client.users().avatar(request);
```

**Retorno:** envelope `{ code, success, data }` com `base64` e `mimetype` da foto.

### `client.users().contacts(instanceId, options)`

```java theme={null}
JsonNode contacts = client.users().contacts("VZ...", options);
```

**Retorno:** envelope `{ code, success, data }` — mapa JID → contato (`FirstName`, `FullName`, `PushName`, etc.).
