# Contacts List

### Autenticação <a href="#headers" id="headers"></a>

API Key

{% hint style="info" %}

### Headers <a href="#headers" id="headers"></a>

Authorization string default: Bearer <\<YOUR\_API\_KEY\_HERE>>  required
{% endhint %}

**Observação:** Em todas as requisições a este endpoint, é necessário incluir a chave de API no cabeçalho da requisição.

## Criar Lista de Contatos

Este endpoint permite criar uma nova lista de contatos.

#### Caminho da Rota

```bash
POST /contacts-list
```

#### Corpo da Requisição

O corpo da requisição deve conter um objeto JSON com os seguintes campos:

* **name** (obrigatório): O nome da lista de contatos.
* **nameFrom**: O nome do remetente associado à lista de contatos.
* **image**: O caminho para uma imagem associada à lista de contatos.
* **csvFile**: O caminho para um arquivo CSV contendo os contatos a serem adicionados à lista.
* **totalSubscribers**: O número total de assinantes na lista.
* **totalSubscribersConfirmed**: O número total de assinantes confirmados na lista.
* **pctSubscribersConfirmed**: A porcentagem de assinantes confirmados na lista.

#### Exemplo de Corpo da Requisição:

```
json
```

```json
[
    {
        "name": "Minha Lista de Contatos",
        "nameFrom": "João",
        "image": "https://example.com/image.png",
        "csvFile": "https://example.com/file.csv",
        "totalSubscribers": 100,
        "totalSubscribersConfirmed": 80,
        "pctSubscribersConfirmed": 80
    }
]
```

#### Exemplo de Resposta:

Se a criação for bem-sucedida, o endpoint retorna os dados da lista de contatos criada.

```
json
```

```json
{
    "id": "6628130411ab86c8ea1d9de5",
    "name": "Minha Lista de Contatos",
    "nameFrom": "João",
    "image": "https://example.com/image.png",
    "csvFile": "https://example.com/file.csv",
    "totalSubscribers": 100,
    "totalSubscribersConfirmed": 80,
    "pctSubscribersConfirmed": 80
}
```

## Listar Todas as Listas de Contatos do Usuário

Este endpoint permite listar todas as listas de contatos associadas a um usuário específico.

#### Caminho da Rota

```
bash
```

```bash
GET /contacts-list
```

#### Exemplo de Resposta:

```
json
```

```json
[
    {
        "id": "6627f83d03c7906052998488",
        "name": "Minha Lista 1",
        "userId": "65f05b7f8a7496c585726777",
        "nameFrom": "Remetente 1",
        "image": "https://s3.amazonaws.com/mailfy-prod/lists/pictures/string",
        "csvFile": "string",
        "totalSubscribers": 12,
        "totalSubscribersConfirmed": 0,
        "pctSubscribersConfirmed": 0,
        "createdAt": "2024-04-23T18:04:45.533Z",
        "updatedAt": "2024-04-23T20:15:46.708Z"
    },
    {
        "id": "6627f85103c7906052998489",
        "name": "Minha Lista 2",
        "userId": "65f05b7f8a7496c585726777",
        "nameFrom": "Remetente 2",
        "image": "https://s3.amazonaws.com/mailfy-prod/lists/pictures/string",
        "csvFile": "string",
        "totalSubscribers": 0,
        "totalSubscribersConfirmed": 0,
        "pctSubscribersConfirmed": 0,
        "createdAt": "2024-04-23T18:05:05.931Z",
        "updatedAt": "2024-04-23T18:05:05.931Z"
    },
    // Outras listas...
]
```

### Atualizar Lista de Contatos por ID

Este endpoint permite atualizar uma lista de contatos específica com base no seu ID.

#### Caminho da Rota

```
bash
```

```bash
PUT /contacts-list/{listId}
```

#### Parâmetros

* **listId** (parâmetro de rota): O ID da lista de contatos a ser atualizada.

#### Corpo da Requisição

O corpo da requisição deve conter um objeto JSON com os campos a serem atualizados.

#### Exemplo de Corpo da Requisição:

```
json
```

```json
{
    "name": "Nova Lista de Contatos",
    "nameFrom": "Novo Remetente",
    "image": "https://nova-imagem.com/imagem.png",
    "csvFile": "https://novo-arquivo.com/arquivo.csv",
    "totalSubscribers": 20,
    "totalSubscribersConfirmed": 15,
    "pctSubscribersConfirmed": 75
}
```

#### Exemplo de Requisição:

```
bash
```

```bash
PUT /contacts-list/6627f83d03c7906052998488
```

#### Exemplo de Resposta:

Se a atualização for bem-sucedida, o endpoint retorna os dados atualizados da lista de contatos.

```
json
```

```json
{
    "id": "6627f83d03c7906052998488",
    "name": "Nova Lista de Contatos",
    "nameFrom": "Novo Remetente",
    "image": "https://nova-imagem.com/imagem.png",
    "csvFile": "https://novo-arquivo.com/arquivo.csv",
    "totalSubscribers": 20,
    "totalSubscribersConfirmed": 15,
    "pctSubscribersConfirmed": 75,
    "createdAt": "2024-04-23T18:04:45.533Z",
    "updatedAt": "2024-04-23T20:15:46.708Z"
}
```

## Deletar Lista de Contatos por ID

Este endpoint permite deletar uma lista de contatos específica com base no seu ID.

#### Caminho da Rota

```
bash
```

```bash
DELETE /contacts-list/{listId}
```

#### Parâmetros

* **listId** (parâmetro de rota): O ID da lista de contatos a ser deletada.

#### Exemplo de Requisição:

```
bash
```

```bash
DELETE /contacts-list/6627f83d03c7906052998488
```

#### Exemplo de Resposta:

Se a exclusão for bem-sucedida, o endpoint retorna uma resposta vazia com o código de status HTTP 204 (No Content).

##


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://mailfy.gitbook.io/api-mailfy-integrations/reference/api-reference/contacts-list.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
