# REST API - Post

Dieser Funktionsblock ermöglicht es Ihnen, Daten an einen bestimmten REST-API-Endpunkt mit einer POST-Anfrage zu senden. Er eignet sich zur Integration Ihrer Anwendung mit externen Diensten über eine API.

## 📥 Eingänge <a href="#inputs" id="inputs"></a>

`Enable Condition` Eine boolesche Eingabe, die steuert, ob die POST-Anfrage gesendet wird. Wenn sie auf true gesetzt ist, wird die Anfrage ausgeführt.

`Server Address` Die URL des Servers, an den die Daten gesendet werden sollen.

`Data ID` Ein String-Identifikator für die zu sendenden Daten. Dies dient als Schlüssel im JSON-Objekt.

`Data` Die tatsächlichen Daten, die an den Server gesendet werden sollen. Dies kann jede Art von Daten sein, die gepostet werden müssen.

## 📤 Ausgänge <a href="#outputs" id="outputs"></a>

`Status Code` Diese Ausgabe liefert den HTTP-Statuscode, der vom Server zurückgegeben wird und den Erfolg oder Misserfolg der Anfrage anzeigt.

`Error` Diese Ausgabe gibt eine Fehlermeldung zurück, falls die Anfrage fehlgeschlagen ist.

`Response` Diese Ausgabe liefert den Antworttext, der vom Server empfangen wurde.

## 🕹️ Steuerungen <a href="#controls" id="controls"></a>

`Timeout (s)` Dieses Feld ermöglicht es Ihnen, eine Timeout-Dauer für die Anfrage in Sekunden festzulegen. Wenn der Server in diesem Zeitraum nicht antwortet, schlägt die Anfrage fehl.

## 🎨 Funktionen <a href="#features" id="features"></a>

`Dynamic Request Configuration` Die Möglichkeit, die Serveradresse, die Daten-ID und die Nutzlast dynamisch anzugeben, ermöglicht eine flexible Integration mit verschiedenen APIs.

`Comprehensive Feedback` Die Ausgaben umfassen den Statuscode, potenzielle Fehlermeldungen und Antworten, was das Debuggen und Validieren der Anfrage erleichtert.

## 📝 Nutzungshinweise <a href="#usage" id="usage"></a>

1. **Enable Condition**: Verbinden Sie ein boolesches Signal mit der Eingabe `Enable Condition`, um das Senden der Anfrage zu erlauben oder zu verweigern.
2. **Set Server Address**: Geben Sie die Serveradresse in die Eingabe `Server Address` ein.
3. **Define Data ID**: Stellen Sie einen String-Identifikator für Ihre Daten bereit.
4. **Provide Data**: Verbinden oder geben Sie die Daten an, die Sie posten möchten.
5. **Set Timeout**: Optional, legen Sie die Timeout-Dauer für die Anfrage fest.
6. **Evaluate**: Führen Sie den Block aus, um die Daten an die API zu senden, und überprüfen Sie die Ausgaben für Statuscode, Antwort oder Fehler.

## 📊 Bewertung <a href="#evaluation" id="evaluation"></a>

Dieser Funktionsblock bewertet die Eingaben, um eine POST-Anfrage an die konfigurierte REST-API zu senden, und liefert Ausgaben, die es Ihnen ermöglichen, die Antwort effektiv zu verarbeiten.

## 💡 Tipps und Tricks <a href="#tips-and-tricks" id="tips-and-tricks"></a>

<details>

<summary>API-Dokumentation überprüfen</summary>

Stellen Sie sicher, dass Sie die API-Dokumentation des Servers, mit dem Sie interagieren, überprüfen. Einige APIs benötigen möglicherweise bestimmte Header oder Authentifizierungstoken.

</details>

<details>

<summary>Antworten validieren</summary>

Wenn Sie eine bestimmte Antwortstruktur erwarten, ziehen Sie in Betracht, den Antwortstring nach der Verarbeitung in ein Dictionary oder ein strukturiertes Objekt umzuwandeln, um die Handhabung zu erleichtern.

</details>

<details>

<summary>Mock-Server verwenden</summary>

Wenn Sie entwickeln und testen, sollten Sie Mock-Server wie Postman oder Mocky in Betracht ziehen, bei denen Sie API-Antworten simulieren können, ohne Live-Endpunkte zu erreichen.

</details>

## 🛠️ Fehlersuche <a href="#troubleshooting" id="troubleshooting"></a>

<details>

<summary>Verbindungsprobleme</summary>

Wenn Sie Probleme haben, eine Verbindung zum Server herzustellen, stellen Sie sicher, dass die Serveradresse korrekt ist und aus Ihrem Netzwerk erreichbar ist. Testen Sie die URL in einem Browser oder in einem Tool wie Postman.

</details>

<details>

<summary>Ungültiges Datenformat</summary>

Wenn die Anfrage aufgrund eines ungültigen Datenformats fehlschlägt, stellen Sie sicher, dass die Daten, die Sie senden, dem erwarteten Format entsprechen, wie in der API-Dokumentation beschrieben.

</details>

<details>

<summary>Timeout-Fehler</summary>

Wenn Sie Timeout-Fehler erhalten, ziehen Sie in Betracht, den Timeout-Wert in den Timeout-Einstellungen zu erhöhen. Dies kann für Server mit langsamer Reaktion erforderlich sein.

</details>


---

# 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.augelab.com/german/function-blocks/input-output/communication/rest-api-post.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.
