# Enviar técnicos

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

## Enviar solicitud al servidor

### Datos&#x20;

```javascript
{
    "conta_id": "DDDDD",
    "token": "XXXX-XXXX-XXXX-XXXX",
    "doc": "99.999.999/9999-99",
    "data": [
        // lista de registros de técnicos (usuarios)
    ]
}
```

{% hint style="info" %}
**conta\_id**: Se debe informar el ID de cuenta que encuentra en la pantalla "Su cuenta" en el menú principal del panel de Milk's Rota.

**token**: Se debe informar el Token de la cuenta, el cual puedes encontrar en la pantalla "Su cuenta" en el menú principal del panel de Milk's Rota.

**doc:** Se debe informar el RUC de la cuenta registrada. Se puede encontrar en la pantalla "Su cuenta" en el menú principal del tablero de Milk's Rota.

**data**: Lista que debe contener uno o más registros de productores. Cada registro puede ser informado con la lista de propiedades que se detalla a continuación. Solo los campos obligatorios no se pueden omitir.
{% endhint %}

### Propriedades

| Campo       | Descripción                                                                                                                                              | Tipo  | Obrigatório |
| ----------- | -------------------------------------------------------------------------------------------------------------------------------------------------------- | ----- | ----------- |
| **codigo**  | codigo de tecnico                                                                                                                                        | Texto | SIM         |
| **nome**    | nombre del tecnico                                                                                                                                       | Texto | SIM         |
| rg          | Documento de identidad                                                                                                                                   | Texto | NÃO         |
| cpf         | Inscripción individual                                                                                                                                   | Texto | NÃO         |
| tipo        | <p>Tipo de técnico. </p><p><strong>P</strong> = Plataforma, </p><p><strong>C</strong> = Campo, </p><p><strong>L</strong> = Laboratorio.</p>              | Texto | NÃO         |
| telefone    | Teléfono de contacto                                                                                                                                     | Texto | NÃO         |
| email       | Correo electrónico de contacto del agente                                                                                                                | Texto | NÃO         |
| senha       | Contraseña de acceso a la aplicación para el caso del técnico de campo                                                                                   | Texto | NÃO         |
| **deleted** | Si se debe eliminar el registro. Si envía el valor **1,** se eliminará si ya existe en la plataforma. Si se envía **0**, se reactivará en la plataforma. | Texto | SIM         |

{% hint style="info" %}
**código**: El campo **código** debe ser llenado con el mismo código ya registrado en el ERP, esta propiedad se utiliza para ubicar registros en la base de datos de la Plataforma de Leche y dirigir operaciones **CRUD**.

&#x20;La propiedad "**Deleted**" se utiliza para comandar el proceso de actualización, incluyendo o eliminando lógicamente el registro. Si su valor es **"0" (cero)** y no se ha encontrado el registro, se creará. Si se encuentra, el valor se actualizará y si el valor es **"1" (uno)**, el contenido se excluirá lógicamente de la base de datos.
{% endhint %}

## Ejemplo solicitud al servidor

```javascript
{
    "conta_id": 9999,
    "token": "s0637r",
    "doc": "99.999.999/9999-90",
    "data": [
        {
            "codigo": "T-1010",
            "nome": "Tecnico_T1010",
            "tipo": "C",  // Campo
            "deleted": "0"
        },
        {
            "codigo": "T-1020",
            "nome": "Tecnico_T1020",
            "tipo": "P" // Plataforma
            "deleted": "0"
        },
        {
            "codigo": "T-1030",
            "nome": "Tecnico_T1030",
            "tipo":"L" // Laboratório
            "deleted": "0"
        },
        {
            "codigo": "T-1040",
            "nome": "",
            "tipo": "C"
            "deleted": "0"
        },
    ]
}
```

## Respuesta

### 200: Importación realizada

```javascript
{
  "succes": true,
    "message": "OK",
    "data": [],
    "monitor.time": 2.14737200737 // Tiempo de ejecución
}  
```

{% hint style="success" %}
Los registros fueron subidos a la Plataforma de Leche e importados sin error.
{% endhint %}

### 200: importación fallida

```javascript
{
    "succes": true,
    "message": "OK",
    "data": [ // errores de importación
        {
            "codigo": "T-1030", // Código del Tecnico no importado
            "error_message": "código do tecnico inválido", // mensaje de error
            "error_code": 40003 // código de error        }
    ],
    "monitor.time": 2.14737200737 // Tiempo de ejecución
}
```

{% hint style="warning" %}
Los registros se cargaron en la Plataforma de Milk y se importaron, sin embargo, algunos registros no se pudieron importar.
{% endhint %}

### 404: Cuenta no encontrada

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

{% hint style="danger" %}
**Que significa eso?** Significa que la identificación de la cuenta no se encontró en la Plataforma de Milk's.
{% endhint %}

### 403: Token no valido

```javascript
{
    "success": false,
    "message": "Token inválido",
    "data": [],
    "monitor.time": 2.14737200737 // Tiempo de ejecución
}
```

{% hint style="danger" %}
**Que significa eso?** Significa que el token informado en la solicitud no corresponde al token registrado para la cuenta.
{% endhint %}
