Kanäle (per HTTP)


images/download/thumbnails/69046852/arrow_up.png Allgemein: System-Interaktion per HTTP (REST API).


images/download/thumbnails/69046852/image2020-3-12_14-40-21.png

Sie können Kanäle per HTTP suchen, anlegen, ändern und löschen.

Zudem können Zusatzkennungen angelegt, geändert und gelöscht werden.

Jeder Request erfordert eine Authentifizierung über Basic Authentication (Benutzername und Passwort eines Lobster_data-Benutzers mit dem Benutzer-Recht Administrator oder Administration via REST). Alternativ zu Basic Authentication können die Benutzerdaten in der URL mit &user=myuser&passwd=mypassword übergeben werden.

Logs für Anfragen dieser Art finden Sie in den Server-Logs unter internal/message.log.

Kanal suchen


Über den Namen des Partners (relation) und den Namen des Kanals (name) wird die ID des Kanals zurück geliefert.


URL (HTTP POST mit JSON):

http://<IP oder URL des Integration Servers>/dw/auth/v1/channelSearch

https://<IP oder URL des Integration Servers>/dw/auth/v1/channelSearch

Hinweis: Siehe Abschnitt Hinzufügen eines HTTPS-Listeners.


JSON:

{
"relation": "My partner",
"name": "My SSH channel"
}

Beispielhafte Response


Die Struktur der Response ist bei jeder erfolgreichen Kanal-Operation identisch.

Der Parameter id ist die ID des Kanals.


{
"response": {
"status": "ok",
"id": "1616400091443029"
}
}

Kanal anlegen


URL (HTTP POST mit JSON):

http://<IP oder URL des Integration Servers>/dw/auth/v1/channel

https://<IP oder URL des Integration Servers>/dw/auth/v1/channel

Kanal ändern


URL (HTTP POST mit JSON):

http://<IP oder URL des Integration Servers>/dw/auth/v1/channel

https://<IP oder URL des Integration Servers>/dw/auth/v1/channel


JSON:

Die Struktur der JSON-Datei ist hier wie beim Anlegen eines Partners, es wird lediglich im Parameter operation der Wert update statt add verwendet und im Parameter id statt dem Wert 0 die tatsächliche ID des Kanals.

Zudem muss nicht die gesamte Struktur verwendet werden, sondern lediglich die Pflicht-Parameter type, operation, name, relation und id und weitere Parameter, die Sie ändern möchten.

Kanal löschen


URL (HTTP POST mit JSON):

http://<IP oder URL des Integration Servers>/dw/auth/v1/channel

https://<IP oder URL des Integration Servers>/dw/auth/v1/channel


JSON:

{
"type": "AS2",
"operation": "delete",
"relation": "My partner",
"id": 1592398910884151
}

Bei type muss der Kanal-Typ (wie beim Anlegen) eingetragen werden.

Mit relation wird der Namen des Partners angegeben.

Der Parameter id ist hier die ID des Kanals.

Zusatzkennungen anlegen, ändern und löschen


Sie können beim Anlegen oder Ändern von Kanälen auch Zusatzkennungen für diese Kanäle anlegen, ändern oder löschen. Beachten Sie bitte, dass ein Anlegen nur funktioniert, wenn die Zusatzkennung existiert (Zusatzkennungen werden zentral angelegt und können in jedem Kanal unterschiedliche Werte haben).

Verwenden Sie dazu zusätzlich folgende Code-Segmente beim Anlegen oder Ändern von Kanälen.

Zusatzkennung anlegen


"optKeys": [ {
"key": "a key",
"value": "a value",
"operation": "add",
"secure": "true"
}
]


Parameter key ist der Name der Zusatzkennung und Parameter value der Wert der Zusatzkennung.

Parameter secure gibt an, ob der Wert verschlüsselt abgelegt werden soll.

Zusatzkennung ändern


"optKeys": [ {
"key": "a key",
"value": "a new value",
"operation": "add",
"secure": "true"
}
]


Beachten Sie bitte, dass hier ebenfalls der Wert add beim Parameter operation verwendet wird. Der alte Wert der Zusatzkennung (falls vorhanden) wird dann einfach überschrieben. Es kann also immer nur maximal ein Eintrag mit dem selben Schlüssel (key) erzeugt werden.

Zusatzkennung löschen


"optKeys": [ {
"key": "a key",
"operation": "delete"
}
]

Beispiel


{
"type": "SMB",
"operation": "add",
"name": "My SMB channel",
"relation": "My partner",
"active": true,
"id": 0,
"user": "me",
"password": "secret",
"domain": "lobster.de",
"server": "smb://localhost",
"contact": {
"language": "de",
"name": "John Doe",
"fax": "",
"email": "john.doe@example.com",
"note": ""
},
"optKeys": [ {
"key": "a key",
"value": "a value",
"operation": "add",
"secure": "true"
},
{
"key": "another key",
"value": "a value",
"operation": "add",
"secure": "true"
},
]
}