# Geräte über RESTful verbinden

## Über RESTful

Mit RESTful können Sie HTTP-Anfragen (GET, POST, PUT, DELETE) senden, um abzufragen *Ressourcen*. Ein *Ressource* kann alles sein, das Informationen enthält, z. B. Dokumente, Bilder oder Dienste.

Jede Ressource hat ihre eigene URL. Clients (z. B. BuildingPro Suites) senden HTTP-Anfragen an diese URL. Als Antwort erhalten die Clients Statuscodes und Darstellungen der angeforderten Daten vom Server, in der Regel als .json oder .xml.

In den meisten Fällen wird RESTful verwendet, um externe Geräte oder Dienste über eine GET-Anfrage über deren API in BuildingPro Suites zu integrieren.

## Was ist der Unterschied zwischen RESTful und Webhook?

Der wesentlichste Unterschied ist die Richtung der Kommunikation.

* Bei RESTful sendet ein Client Anfragen an einen Server. Der Server antwortet mit einem Statuscode und (falls möglich) den angeforderten Daten. Für die Kommunikation über RESTful müssen die genaue Adresse des Servers sowie die einzelnen Endpunkte bekannt sein.
* Bei Webhook geht die Kommunikation vom Server aus. Der Server sendet Daten in Echtzeit aktiv an den Client. Der Client muss keine Anfragen senden. Für die Kommunikation über Webhooks muss der Server die Adresse des Clients kennen.

## Vorgehen

Das Vorgehen zum Integrieren von Geräten über RESTful lässt sich in folgende Schritte unterteilen:

1. Zuerst wird eine *Verbindung* erstellt und konfiguriert. Diese Verbindung enthält die Basis-URL zu einer API.
2. In dieser Verbindung werden einzelne *Anfragen* erstellt. In diese Anfragen werden die einzelnen Parameter eingetragen, die abgefragt werden sollen.

<figure><img src="https://3489494878-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F9GvUpaatBiReR43XFSMg%2Fuploads%2FERsOA5LMqF3orziqLlXf%2FDocs_Verbindungen%20-%20Verbindungen%20RESTful%20BaseURL.png?alt=media&#x26;token=83d24c66-cac3-40de-9434-27806c273170" alt=""><figcaption></figcaption></figure>

## Übersicht

<div data-full-width="true"><figure><img src="https://3489494878-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F9GvUpaatBiReR43XFSMg%2Fuploads%2F6M1i9eaCNK76VgadCvxB%2FDocs_Verbindungen%20-%20Verbindungen%20RESTful.png?alt=media&#x26;token=759098b9-973f-46fb-99f1-873502bed257" alt=""><figcaption><p>Abb. 1 – Verbindungen RESTful</p></figcaption></figure></div>

<div data-full-width="true"><figure><img src="https://3489494878-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F9GvUpaatBiReR43XFSMg%2Fuploads%2FhTvEnXI800tRZGzBQfCb%2FDocs_Verbindungen%20-%20Verbindungen%20RESTful%20Verbindung%20Details.png?alt=media&#x26;token=8c724db6-aee3-4c2f-8b11-b16f8b0ad1f8" alt=""><figcaption><p>Abb. 2 – Verbindungen RESTful (Details)</p></figcaption></figure></div>

<table data-full-width="true"><thead><tr><th width="69.53334554036456">Symbol</th><th width="205.20001220703125">Beschreibung</th><th>Details</th></tr></thead><tbody><tr><td><strong>[A]</strong></td><td>Menü „Verbindungen“</td><td>Klicken Sie, um das Menü „Verbindungen“ zu öffnen</td></tr><tr><td><strong>[B]</strong></td><td>Registerkarte</td><td>Zugriff auf die jeweiligen Schnittstellen</td></tr><tr><td><strong>[C]</strong></td><td>Arbeitsbereich</td><td>Zeigt eine Liste der vorhandenen Verbindungen an (falls vorhanden)</td></tr><tr><td><strong>[D]</strong></td><td>Verbindung</td><td>Eine vorhandene Verbindung</td></tr><tr><td><strong>[E]</strong></td><td>Anfragen ein-/ausblenden</td><td>Klicken Sie, um die dieser Verbindung zugeordneten Anfragen ein- oder auszublenden</td></tr><tr><td><strong>[F]</strong></td><td>Anfragen</td><td>Einzelne Anfragen</td></tr><tr><td><strong>[G]</strong></td><td>Verbindung pausieren/fortsetzen</td><td>Klicken Sie, um eine Verbindung zu pausieren oder fortzusetzen</td></tr><tr><td><strong>[H]</strong></td><td>Verbindungsstatus</td><td>Zeigt den aktuellen Status der Verbindung an</td></tr><tr><td><strong>[I]</strong></td><td>Name</td><td>Name der Verbindung</td></tr><tr><td><strong>[J]</strong></td><td>URL</td><td>Die Basis-URL der jeweiligen Verbindung</td></tr><tr><td><strong>[K]</strong></td><td>Anfragen</td><td>Zeigt an, wie viele Anfragen dieser Verbindung zugeordnet sind</td></tr><tr><td><strong>[L]</strong></td><td>Anfrage hinzufügen</td><td>Klicken Sie, um der jeweiligen Verbindung eine Anfrage hinzuzufügen</td></tr><tr><td><strong>[M]</strong></td><td>Neue Verbindung</td><td>Klicken Sie, um eine neue Verbindung zu erstellen</td></tr><tr><td><strong>[N]</strong></td><td>Verbindungsdetails</td><td>Klicken Sie, um die Details der jeweiligen Verbindung zu öffnen. Öffnet die ↗Verbindungsdetails</td></tr><tr><td><strong>[O]</strong></td><td>Verbindung löschen</td><td>Löscht die jeweilige Verbindung. ⚠ Achtung: Wenn die Verbindung auch in anderen Mandanten verwendet wird, wird sie dort ebenfalls gelöscht.</td></tr><tr><td><strong>[P]</strong></td><td>Anfragedetails</td><td>Klicken Sie, um die Details der jeweiligen Anfrage zu bearbeiten.</td></tr></tbody></table>

## Neue Verbindung erstellen

1. Klicken Sie in der Seitenleiste auf **Verbindung \[A]**

   ▷ Das Fenster „Verbindungen“ wird geöffnet
2. Wählen Sie das **RESTful \[B]** Reiter
3. Im Arbeitsbereich **\[C]**, wird eine Liste der bereits vorhandenen Verbindungen **\[D]** angezeigt

   ◈ Wenn Sie keine Einträge sehen, sind noch keine Verbindungen vorhanden

   ◈ Verbindungen, die in anderen Mandanten konfiguriert wurden, werden ebenfalls angezeigt
4. Klicken Sie auf **\[M]** um eine neue Verbindung herzustellen

   ▷ Die [↗ „RESTful-Verbindung konfigurieren“](https://docs.buildings.ability.abb/collection/german/pflichtbasis/platform-core/connect-hub/connectivity-as-a-service/connect-devices-via-restful/configure-restful-connection) Fenster öffnet sich

Weiter in Kapitel [↗ „RESTful-Verbindung konfigurieren“](https://docs.buildings.ability.abb/collection/german/pflichtbasis/platform-core/connect-hub/connectivity-as-a-service/...with-kafka/configure-connection)

## Vorhandene Verbindung bearbeiten

1. Klicken Sie in der Seitenleiste auf **Verbindung \[A]**

   ▷ Das Fenster „Verbindungen“ wird geöffnet
2. Wählen Sie das **RESTful \[B]** Reiter
3. Im Arbeitsbereich **\[C]**, wird eine Liste der bereits vorhandenen Verbindungen **\[D]** angezeigt

   ◈ Wenn Sie keine Einträge sehen, sind noch keine Verbindungen vorhanden

   ◈ Verbindungen, die in anderen Mandanten konfiguriert wurden, werden ebenfalls angezeigt
4. Klicken Sie auf **\[M]** um eine neue Verbindung herzustellen

   ▷ Die [↗ „RESTful-Verbindung konfigurieren“](https://docs.buildings.ability.abb/collection/german/pflichtbasis/platform-core/connect-hub/connectivity-as-a-service/connect-devices-via-restful/configure-restful-connection) Fenster öffnet sich

Weiter in Kapitel [↗ „RESTful-Verbindung konfigurieren“](https://docs.buildings.ability.abb/collection/german/pflichtbasis/platform-core/connect-hub/connectivity-as-a-service/connect-devices-via-restful/configure-restful-connection)
