# Enviar pontos de coleta

> ## Método POST
>
> <http://app.milksrota.com.br/api/retaguardasync/writePontoColeta>

## Requisição

### Dados da requisição

```javascript
{
    "conta_id": "DDDDD",
    "token": "XXXX-XXXX-XXXX-XXXX",
    "doc": "99.999.999/9999-99",
    "programacao":"P-0006",
    "linha":"BR250",
    "data": [
        // lista de registros de pontos de coleta
    ]
}
```

{% hint style="info" %}
**conta\_id**: Deve ser informado o ID da conta que você encontra na tela ***"Sua conta"*** no menu principal no painel do Milk's Rota.

**token**: Deve ser informado o Token da conta, que você encontra na tela ***"Sua conta"*** no menu principal no painel do Milk's Rota.

**doc:** Deve ser informado o CNPJ da conta cadastra. Pode ser encontrado na tela ***"Sua conta"*** no menu principal do painel Milk's Rota.

**programacao:** Informe o código da programação cadastrada para uma linha especifica.

\
**linha:** Informe o código da linha vinculada a programação a que se referem os pontos de coleta

**data**: Lista que deve conter um ou mais registros de fazendas. Cada registro de fazenda pode ser informando com a relação de propriedades detalhadas abaixo. Apenas os campos obrigatórios não podem ser ignorados.
{% endhint %}

### Propriedades do ponto de coleta.

| **Campo**        | **Descrição**                                                                                                                                                                                | **Tipo** | **Obrigatório** |
| ---------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------- | --------------- |
| **codigo**       | Código único do ponto de coleta                                                                                                                                                              | Texto    | SIM             |
| **produtor  \*** | Código do produtor                                                                                                                                                                           | Texto    | SIM             |
| **fazenda  \***  | Código da fazenda                                                                                                                                                                            | Texto    | SIM             |
| **tanque  \***   | Código do tanque (Ponto de coleta)                                                                                                                                                           | Texto    | SIM             |
| horario          | Horário previsto da coleta                                                                                                                                                                   | Texto    | NÃO             |
| ordem            | Ordem de coleta na programação                                                                                                                                                               | Número   | NÃO             |
| coleta\_seletiva | <p>Indica se o volume coletado neste ponto deverá ser armazenado em compartimento específico no veículo de transporte:  </p><p><strong>1</strong> - Sim,</p><p><strong>0</strong> - Não.</p> | Número   | NÃO             |

{% hint style="info" %}
**codigo**: O campo código deverá ser preenchido com o mesmo código  já cadastrado no ERP, esta propriedade é utilizada para localizar os registros na base de dados da Plataforma Milk's e direcionar as operações CRUD.

As propriedades marcadas com **(\*) asterisco,** são utilizadas para localizar os registros de relacionamento com as respectivas tabelas. O registro precisar existir na tabela relacionada para que o ponto de coleta seja importado.
{% endhint %}

### Exemplo de requisição

```javascript
{
    "conta_id": "9999",
    "token": "s0637r",
    "doc": "99.999.999/9999-99",
    "programacao":"P-0006",
    "linha":"BR250",
    "data": [
        {
            "codigo": "PC-0006/01",
            "produtor": "1178",
            "fazenda": "0013",
            "tanque": "0013",
            "ordem": "1",
            "horario": "06:00",
            "coleta_seletiva": "0"
        },
        {
            "codigo": "PC-0006/02",
            "produtor": "000386",
            "fazenda": "F386",
            "tanque": "000386",
            "ordem": "2",
            "horario": "06:45",
            "coleta_seletiva": "0"
        },
       
         {
            "codigo": "PC-0006/03",
            "produtor": "",
            "fazenda": "0037",
            "tanque": "0037",
            "ordem": "3",
            "horario": "07:25",
            "coleta_seletiva": "0"
        }
 
    ]
}

```

## Resposta

### 200: Registros importados

```javascript
{
  "succes": true,
    "message": "OK",
    "data": [],
    "monitor.time": 2.14737200737 // Tempo de execução
}  
```

{% hint style="success" %}
Os registros foram enviados para a Plataforma Milk's e importados sem erro.
{% endhint %}

### 200: Importação com falhas

```javascript
{
    "succes": true,
    "message": "OK",
    "data": [ // Falhas de importação
        {
            "codigo": "PC-0006/03", // Código do ponto de coleta não importada
            "error_message": "código do produtor inválido", // mensagem de erro
            "error_code": 40003 // código do erro
        }
    ],
    "monitor.time": 2.14737200737 // Tempo de execução
}
```

{% hint style="info" %}
Os registros foram enviados para a Plataforma Milk's e importados, entretanto, alguns registros não puderam ser importados.
{% endhint %}

### 404: Conta não localizada&#x20;

```javascript
{    
    "success": false,
    "message": "Conta não localizada",
    "data": [],
    "monitor.time": 2.14737200737 // Tempo de execução
}
```

{% hint style="danger" %}
**O que isso significa?** Significa que o ID da conta não foi localizado na Plataforma Milk's.
{% endhint %}

### 403: Token inválido

```javascript
{
    "success": false,
    "message": "Token inválido",
    "data": [],
    "monitor.time": 2.14737200737 // Tempo de execução
}
```

{% hint style="danger" %}
**O que isso significa?** Significa que o token informado na requisição não corresponde ao token cadastrado para a conta.
{% endhint %}


---

# 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://docs.milksrota.com.br/milks-rota/ponto-de-coleta/enviar-pontos-de-coleta.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.
