# Enviar programação

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

## Requisição

### Dados da requisição

```javascript
{
    "conta_id": "DDDDD",
    "token": "XXXX-XXXX-XXXX-XXXX",
    "doc": "99.999.999/9999-99",
    "data": [
        // lista de registros de programação
    ]
}
```

{% 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.

**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 da programação

| **Campo**                | **Descrição**                                                                                                                                                   | **Tipo**    | **Obrigatório** |
| ------------------------ | --------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------- | --------------- |
| **codigo**               | Código da rota                                                                                                                                                  | Texto       | SIM             |
| **linha \***             | Código da linha de coleta                                                                                                                                       | Texto       | SIM             |
| **dt\_vigencia\_inicio** | Data de vigência inicial da programação                                                                                                                         | Data e Hora | SIM             |
| **dt\_vigencia\_fim**    | Data da vigência final da programação                                                                                                                           | Data e hora | SIM             |
| deleted                  | Se o registro deve ser excluído. Se enviar o valor **1** ele será excluído caso já exista na plataforma. Se for enviado **0** ele será reativado na plataforma. | 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.

* **linha*****:*** Esta  propriedade  é utilizada para associar a linha de coleta na tabela "*linha*" com com o registro da programação. Se  registro de linha não for localizado, o registro de programação não será importado. &#x20;
  {% endhint %}

### Exemplo de requisição

```javascript
{
    "conta_id": "9999",
    "token": "s0637r",
    "doc": "99.999.999/9999-99",
    "data": [
        {
            "codigo": "P-0006",
            "linha":"BR250",
            "dt_vigencia_inicio": "2020-08-01 00:00:01",
            "dt_vigencia_fim": "2030-08-01 23:59:59",
            "deleted": "0"
        },
         {
            "codigo": "P-0007",
            "linha":"",
            "dt_vigencia_inicio": "2020-08-01 00:00:01",
            "dt_vigencia_fim": "2030-08-01 23:59:59",
            "deleted": "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": "P-0007", // Código da programação não importada
            "error_message": "código do linha 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/programacao-de-coleta/enviar-programacao.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.
