# Merkmale

## Merkmale abrufen

<mark style="color:blue;">`GET`</mark> `https://api.propstack.de/v1/groups`

Hier werden alle Merkmale entweder von Kontakten, Objekten oder Aktivitäten zurückgegeben. Wenn kein Wert unter `entity` angegeben wird, dann werden standardmäßig nur die Merkmale der Kontakte zurückgegeben.

#### Query Parameters

| Name         | Type    | Description                                                                              |
| ------------ | ------- | ---------------------------------------------------------------------------------------- |
| super\_group | integer | ID der Oberkategorie                                                                     |
| entity       | string  | Eines von `for_clients`, `for_properties`, oder `for_activities`. Default: `for_clients` |

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

```javascript
[
    {
        "id": 100,
        "name": "Eigentümer",
        "super_group_id": 99
    }
]
```

{% endtab %}
{% endtabs %}

## Merkmal erstellen

<mark style="color:green;">`POST`</mark> `https://api.propstack.de/v1/groups`

#### Request Body

| Name             | Type    | Description                                                                   |
| ---------------- | ------- | ----------------------------------------------------------------------------- |
| super\_group\_id | integer | ID der Oberkategorie (auch ein Merkmal)                                       |
| entity           | string  | Eines von `for_clients`, `for_properties` oder `for_activities`.              |
| name             | string  | Name des Merkmals. Es darf kein anderes Merkmal mit dem gleichen Namen geben. |

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

```
```

{% endtab %}
{% endtabs %}

## Obermerkmale lesen

<mark style="color:blue;">`GET`</mark> `https://api.propstack.de/v1/super_groups`

#### Query Parameters

| Name    | Type   | Description                                                 |
| ------- | ------ | ----------------------------------------------------------- |
| entity  | string | eines von `for_clients`, `for_properties`, `for_activities` |
| include | string | kann den Wert `groups` haben, um die Merkmale mitzuliefern  |

{% tabs %}
{% tab title="200 Antwort, wenn man include=groups mitgibt. Ansonsten fehlt das Attribut groups" %}

```javascript
{
    "data": [
        {
            "id": 1,
            "name": "Berufe",
            "entity": "for_clients",
            "groups": [
                {
                    "id": 1789,
                    "name": "Architekt",
                    "super_group_id": 1
                },
                {
                    "id": 1802,
                    "name": "Designeer",
                    "super_group_id": 1
                }
            ]
        }
    ]
}
```

{% endtab %}
{% endtabs %}
