1.907 Byte hinzugefügt,
12:27, 5. Okt. 2018 sourceDESK bietet eine API für Administratoren an, um Objekte im System zu verwalten. Jeder Administrator mit entsprechenden Rechten kann einen eigenen API-Schlüssel bekommen, dieser kann abgerufen werden, indem Sie auf Ihren Namen rechts oben in der Administration klicken und den Punkt "API" auswählen.
Mit dem API-Schlüssel können Aktionen in Ihrem Namen und mit Ihren Rechten ausgeführt werden.
== Aufruf der API ==
Die API ist unter <code>SOURCEDESK_URL/admin/api.php</code> erreichbar. Eine Funktion rufen Sie mit der URL <code>SOURCEDESK_URL/admin/api.php/FUNCTION</code> auf.
Relevant für einen Aufruf ist nach dem REST-Prinzip die HTTP-Methode. Unterstützt werden je nach Funktion <code>GET</code>, <code>POST</code>, <code>PUT</code> und <code>DELETE</code>.
== Authentifizierung ==
Die Authentifizierung erfolgt über den API-Schlüssel. Es ist ein entsprechender HTTP-Header zu setzen:
<code>Authorization: Bearer API_TOKEN</code>
== Rückgabeformat ==
Sämtliche Rückgaben erfolgen im JSON-Format. Im Fehlerfall erhalten Sie ein "error"-Element mit einer Fehlerbeschreibung.
== Unterstützte Funktionen ==
Die System-API ist derzeit noch in Entwicklung und unterstützt zum jetzigen Zeitpunkt folgende Funktionen/Objekte:
* [[System-API: Admin-Info]]
* [[System-API: Kunden]]
* [[System-API: Rechnungen]]
== PHP-Beispiel ==
Das nachfolgende Beispiel in PHP zeigt den Abruf der [[System-API: Admin-Info|Admin-Info]]:
<source lang="php">
$ch = curl_init("SOURCEDESK_URL/admin/api.php/me");
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_HTTPHEADER, [
"Authorization: Bearer API_TOKEN"
]);
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "GET");
$res = json_decode(curl_exec($ch), true);
curl_close($ch);
if (!is_array($res)) {
die("Invalid response");
}
if (!empty($res['error'])) {
die($res['error']);
}
echo "Hello, {$res['name']}";
</source>