"Web-APIs sind das Rückgrat des modernen Geschäfts und ermöglichen es Unternehmen, sich einfach mit Partnern, Kunden und anderen Organisationen zu verbinden, um Daten und Funktionalitäten sicher und effizient zu teilen."
HTTPpostCONTENTjson
Eine Web-API (Application Programming Interface) ist ein Mittel, über das Anwendungen oder Dienste auf eine Weise kommunizieren und Daten austauschen können, die von anderen Anwendungen oder Diensten verstanden werden. Eine Web-API ist eine Art von Schnittstelle, die über das Internet bereitgestellt wird und es ermöglicht, auf Daten und Funktionen einer Anwendung oder eines Dienstes von einer anderen Anwendung oder einem anderen Dienst aus zuzugreifen.
Web-APIs sind in der Regel über das HTTP-Protokoll (Hypertext Transfer Protocol) bereitgestellt und können über HTTP-Methoden wie GET, POST, PUT und DELETE aufgerufen werden. Sie können auch in verschiedenen Formaten wie JSON oder XML bereitgestellt werden.
Web-APIs ermöglichen es Entwicklern, ihre Anwendungen oder Dienste mit anderen zusammenzuarbeiten und Daten und Funktionen von anderen Anwendungen oder Diensten zu nutzen, um neue und innovative Anwendungen zu erstellen. Beispiele für Web-APIs sind die Google Maps API, die es Entwicklern ermöglicht, Karten- und Standortdaten in ihre Anwendungen zu integrieren, oder die Twitter API, die es ermöglicht, Tweets in eine Anwendung zu integrieren.
Eine Web-API besteht aus verschiedenen Komponenten, die zusammen dafür sorgen, dass Anwendungen miteinander kommunizieren können. Dazu gehören:
Endpunkte (URLs): Dies sind die Adressen, an die Anfragen gesendet werden, um auf die Funktionalitäten der API zugreifen zu können.
HTTP-Methoden (z.B. GET, POST, PUT, DELETE): Dies sind die Anweisungen, die an die API gesendet werden, um bestimmte Aktionen auszuführen.
Request-Header: Enthalten Informationen über die Anfrage, wie z.B. den verwendeten Browser oder die Authentifizierungsdaten des Anwenders.
Request-Body: Enthält die Daten, die an die API gesendet werden, z.B. bei einer POST-Anfrage.
Response-Header: Enthalten Informationen über die Antwort, wie z.B. den HTTP-Statuscode oder die Authentifizierungsdaten des Anwenders.
Response-Body: Enthält die Daten, die von der API zurückgegeben werden, z.B. als JSON- oder XML-Format.
Es gibt viele Business-APIs deren Einbindung Deine Möglichkeiten erweitern.
Im Workflowdesign setzt Du folgende Felder um einen Workflow auszulösen (siehe webapi$.."). Wird ein Workflowschritt abgearbeitet erfolgt die Prüfung auf ein definierter Web-API aufruf. Ist dieser vorhanden erfolgt der Aufruf.
setzten der Login Zielurl
var apiAuthUrl = "https://abc.abc.biz/resscources/login"
webapi$HTTPconnectionAuthURL = apiUrl;
2. Username und Passwort setzen (wird in ein KeyValue Pair gewandelt)
var authUser = "username=...&password=..."
webapi$HTTPconnectionAuthURL = authUser;
Web-API Endpunkt festlegen
var apiUrl = "https://api.example.com/v1/users"
webapi$HTTPpostURL = apiUrl;
Das Ziel einer Web-API wird als Endpunkt (auch als "API-Endpunkt" oder "URL" bezeichnet). Es handelt sich hierbei um die Adresse, an die Anfragen gesendet werden, um auf die Funktionalitäten der API zugreifen zu können. Ein Beispiel für einen Endpunkt einer API könnte sein: "https://api.example.com/v1/users"
Endpunkte sind eindeutig und spezifisch für die gewünschte Funktionalität oder Ressource, die durch die API bereitgestellt wird.
2. Header (wird in ein KeyValue Pair gewandelt)
var jsonHeader = {
"Content-Type": "application/json",
"Authorization": "Bearer YOUR_ACCESS_TOKEN",
"User-Agent": "YOUR_APP_NAME",
"X-Custom-Header": "custom_value"
} ;
webapi$HTTPpostCONTENTheader = jsonHeader;
Der Content-Header ist ein Teil des HTTP-Headers und enthält Informationen darüber, welche Art von Inhalt (z.B. Text, Bilder, Video) in der Nachricht enthalten ist, sowie weitere Details darüber, wie der Inhalt interpretiert werden soll.
Ein Beispiel für einen Content-Header könnte sein:
Content-Type: application/json
Content-Length: 1234
Der Content-Type gibt an, welches Format der Inhalt hat, z.B. ob es sich um eine JSON- oder XML-Nachricht handelt. Der Content-Length gibt die Größe des Inhalts in Bytes an.
Content-header sind wichtig, weil sie dem Server und dem Client dabei helfen, den Inhalt richtig zu interpretieren und zu verarbeiten.
3. Die Workflow Engine sendet JSON
var jsonContent ={
"name": "John Smith",
"age": 35,
"address": {
"street": "123 Main St",
"city": "Anytown",
"state": "CA",
"zip": "12345"
},
"phoneNumbers": [
{ "type": "home", "number": "555-555-1234" },
{ "type": "work", "number": "555-555-5678" }
],
"email": "john.smith@example.com"
}
;
webapi$HTTPpostCONTENTjson = jsonContent;
The content that is sent in a web API request or response can vary depending on the specific API and the type of request or response. Common types of content that may be sent include:
JSON or XML data: These are common formats for sending structured data such as information about users, products, or other resources.
Multipart data: This is a format for sending mixed content types, such as text and binary data, in a single message.
Form data: This is a format for sending data in key-value pairs, often used in HTML forms.
Binary data: This can include images, videos, audio, or other types of binary files.
Plain text: This can include simple text strings or messages.
Depending on the API and the specific request, the content may be sent in the request body, in the URL parameters, or in the headers. This is defined by the API documentation.
In summary, the content that is sent will depend on the specific API and the type of request or response. It can include structured data, binary files, text, or a combination of different types of content.
4. Method Optional (default value is "POST")
default value is "POST"
webapi$HTTPmethod = "";
Wichtig der POST empfängt auch eine Antwort und speichert diesen im Kontext des Dokuments in das Feld: $work.textContainer
Diesen Wert von work$textContainer kannst du z.B. wie folgt im nächsten Arbeitsschritt nutzen:
Beispiel die API gibt dir ein JSON zurück und in der url steht ganz hinten eine ID. So könntest Du diese wie folgt lesen:
var astid = "";
try {
var json = JSON.parse(work$textContainer.replace(/'/g, '"'));
var links = json['_links'];
var self = links['self'];
var url = self['href'];
astid = url.substring(url.lastIndexOf("/") + 1);
} catch (err) {
astid += "";
}
The method refers to the HTTP verb used in a request. The most common HTTP methods used in web APIs are:
GET: Retrieves data from the server. This method is used to retrieve information from the server without modifying any data.
POST: Sends data to the server. This method is used to create a new resource on the server.
PUT: Updates data on the server. This method is used to update an existing resource on the server.
PATCH: Updates data on the server. This method is used to partially update an existing resource on the server.
DELETE: Deletes data on the server. This method is used to delete an existing resource on the server.
These are the most common methods but there are other methods like OPTIONS, HEAD, etc.
The choice of method depends on the action you want to take with the data, and the server-side logic that handles the request.