# Listar estructuras/esquemas de todos los tipos de OTs

Para obtener las estructuras/esquemas de todos los tipos de OTs existentes, se debe enviar un GET como el que se especifica a continuación.

<mark style="color:blue;">`GET`</mark> `https://api.persat.com.ar/v1/work-orders-schemas`

#### Path Parameters

| Name           | Type    | Description                                                                |
| -------------- | ------- | -------------------------------------------------------------------------- |
| includeWidgets | Boolean | true \| false. En caso de ser true, incluye la descripcion de los widgets. |

#### Headers

| Name                                            | Type   | Description     |
| ----------------------------------------------- | ------ | --------------- |
| Authorization<mark style="color:red;">\*</mark> | String | Bearer API\_KEY |

{% tabs %}
{% tab title="200: OK includeWidgets=true" %}

```json
{
    "success": true,
    "data": [
        {
            "wo_group": 1,
            "wo_shema_id": 1,
            "production": true,
            "version": 1,
            "draft": false,
            "name": "Limpieza de tanque",
            "default_service_time": 45,
            "labels_ids": [
                2,
                5
            ],
            "instructions_description": {
                "widgets": [
                    {
                        "id": "FWwNsdtbs",
                        "title": "Campo Texto",
                        "subtitle": "Complete con los datos correspondientes",
                        "widget_type": "TEXT_FIELD"
                    },
                    {
                        "id": "FWiEIFM1s",
                        "title": "Campo Parrafo",
                        "subtitle": "Complete las observaciones",
                        "widget_type": "TEXT_PARAGRAPH"
                    },
                    { ... }
                ]
            },
            "results_description": {
                "widgets": [
                    {
                        "id": "FWrR1qykT",
                        "title": "Campo Fecha",
                        "subtitle": "Seleccione la fecha",
                        "widget_type": "DATE_FIELD"
                    },
                    {
                        "id": "FWNE2A6HR",
                        "title": "Seleccion Multiple",
                        "subtitle": "Seleccione las opciones",
                        "widget_type": "MULTIPLE_SELECTION",
                        "description": {
                            "options": [
                                "Opcion 1",
                                "Opcion 2",
                                "Opcion 3"
                            ]
                        }
                    }
                ]
            }
        }, { ... }        // Otro tipo de OT
    ]
}
```

{% endtab %}

{% tab title="400: Bad Request Error" %}

```javascript
{
    "success": false,
    "error": {
        "status": 400,
        "type": "BAD_REQUEST",
        "userMessage": "descripción del error"
    }
}
```

{% endtab %}

{% tab title="200: OK includeWidgets=false | undefined" %}

```json
{
    "success": true,
    "data": [
        {
            "wo_group": 1,
            "wo_shema_id": 1,
            "production": true,
            "version": 1,
            "draft": false,
            "name": "Limpieza de tanque",
            "default_service_time": 45,
            "labels_ids": [
                2,
                5
            ]
        }, { ... }        // Otro tipo de OT
    ]
}
```

{% endtab %}
{% endtabs %}

### Analizando la Respuesta

La respuesta es identica a la que se obtiene en [Obtener estructura/esquema de un Tipo de OT](https://docs.api.persat.com.ar/modulos/ordenes-de-trabajo/obtener-estructura-esquema-de-un-tipo-de-ot), solo que "data" ahora es un array, en donde cada item, es cada tipo de OT.

{% hint style="info" %}
En caso de no enviar el parámetro **includeWidgets**, los fields "instructions\_description" y "results\_description" no aparecerán en la respuesta
{% endhint %}
