# Asignar zonas a varios dispositivos

Este endpoint permite asignar nuevas zonas a varios dispositivos. Agregando la zona a su lista de zonas asignadas.

<mark style="color:purple;">`PUT`</mark> `https://api.persat.com.ar/v1/zones`

#### Headers

| Name          | Type   | Description      |
| ------------- | ------ | ---------------- |
| Content-Type  | string | application/json |
| Authorization | string | Bearer API\_KEY  |

#### Request Body

| Name                                           | Type      | Description                                                                                             |
| ---------------------------------------------- | --------- | ------------------------------------------------------------------------------------------------------- |
| zone\_ids<mark style="color:red;">\*</mark>    | number\[] | Array con enteros. Cada uno de los enteros es el id de la zona que quiero asignar.                      |
| devices\_ids<mark style="color:red;">\*</mark> | number\[] | Array con enteros. Cada uno de los enteros es el id del dispositivo al cual quiero asignarle las zonas. |

{% tabs %}
{% tab title="200 Zonas asignadas" %}

```javascript
{
    "success": true,
    "data": {}
}
```

{% endtab %}

{% tab title="400 Alguna de las zonas no existe" %}

```javascript
{
    "success": false,
    "error": {
        "status": 400,
        "type": "BAD_REQUEST",
        "userMessage": "device_id or zone_id no existe/n"
    }
}
```

{% endtab %}

{% tab title="404: Dispositivo no encontrado" %}

```javascript
{
    "success": false,
    "error": {
        "status": 404,
        "type": "NOT_FOUND",
        "userMessage": "No existe un device con este id: 1532131231"
    }
}
```

{% endtab %}
{% endtabs %}

### Ejemplo de Request

Ejemplo de body, en donde agregamos las zonas 5 y 6 a los dispositivos 15 y 14. De esta forma mantienen además sus zonas previas, si las hubiera.

```json
{
    "zone_ids": [5,6],
    "devices_ids": [15,14]
}
```

### Analizando la Respuesta

Esta respuesta se corresponde a la asignación de la zona 1 y 2.&#x20;

```json
{
    "success": true,
    "data": {}
}
```

**data.** Es un Json vacio

{% hint style="warning" %}
Si alguna de las zonas no se puede asignar. Entonces no se asigna ninguna zona y se recibe un error. Es decir, que basta con revisar status 200 para verificar que las zonas fueron asignadas.
{% 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.api.persat.com.ar/entidades-basicas/zonas-de-trabajo/asignar-zonas-masivamente/asignar-zonas-a-varios-dispositivos.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.
