mirror of
https://github.com/OpenXE-org/OpenXE.git
synced 2024-12-26 22:50:29 +01:00
1918 lines
431 KiB
HTML
1918 lines
431 KiB
HTML
|
<!doctype HTML> <html> <head> <meta charset="utf-8"> <meta http-equiv="X-UA-Compatible" content="IE=edge"> <meta name="viewport" content="width=device-width,initial-scale=1"> <title>Xentral-API API documentation</title> <meta name="generator" content="https://github.com/raml2html/raml2html 7.6.0"> <link rel="stylesheet" href="./assets/docs.css"> <link rel="stylesheet" href="./assets/docs_custom.css"></head> <body data-component="scroll-spy"> <header class="hero"> <div class="hero-body"> <h1 class="title is-1">Xentral-API</h1> <p class="subtitle has-priority-3">Die API befindet sich in ihrer Xentral-Installation im Unterordner `/www/api/`.</p> </div> </header> <div> <div class="columns"> <div class="column is-nav is-narrow-tablet is-12-mobile" data-component="menu"> <aside class="sidebar"> <nav class="menu section"> <p class="menu-label">Info</p> <ul class="menu-list"> <li> <a href="#__basic_information_docs"> Basic Information </a> </li> <li> <a href="#authentifizierung"> Authentifizierung </a> </li> <li> <a href="#authorisierung"> Authorisierung </a> </li> <li> <a href="#requests"> Requests </a> </li> <li> <a href="#responses"> Responses </a> </li> <li> <a href="#filter_sortierung_paginierung"> Filter/Sortierung/Paginierung </a> </li> <li> <a href="#fehler_codes"> Fehler-Codes </a> </li> <li> <a href="#debug_modus"> Debug-Modus </a> </li> <li> <a href="#php_beispiel_clients"> PHP Beispiel-Clients </a> </li> <li> <a href="#webserver_konfiguration"> Webserver-Konfiguration </a> </li> <li> <a href="#standard_api_aufrufe"> Standard API-Aufrufe </a> </li> <li> <a href="#test_system"> Test-System </a> </li> </ul> <p class="menu-label">Resources</p> <ul class="menu-list"> <li> <a href="#v1_aboartikel"> /v1/aboartikel </a> <ul> <li> <a href="#v1_aboartikel"> /v1/aboartikel </a> </li> <li> <a href="#v1_aboartikel__id_"> /v1/aboartikel/{id} </a> </li> </ul> </li> <li> <a href="#v1_abogruppen"> /v1/abogruppen </a> <ul> <li> <a href="#v1_abogruppen"> /v1/abogruppen </a> </li> <li> <a href="#v1_abogruppen__id_"> /v1/abogruppen/{id} </a> </li> </ul> </li> <li> <a href="#v1_adressen"> /v1/adressen </a> <ul> <li> <a href="#v1_adressen"> /v1/adressen </a> </li> <li> <a href="#v1_adressen__id_"> /v1/adressen/{id} </a> </li> </ul> </li> <li> <a href="#v2_adressen"> /v2/adressen </a> <ul> <li> <a href="#v2_adressen"> /v2/adressen </a> </li> <li> <a href="#v2_adressen__id_"> /v2/adressen/{id} </a> </li> </ul> </li> <li> <a href="#v1_adresstyp"> /v1/adresstyp </a> <ul> <li> <a href="#v1_adresstyp"> /v1/adresstyp </a> </li> <li> <a href="#v1_adresstyp__id_"> /v1/adresstyp/{id} </a> </li> </ul> </li> <li> <a href="#v1_artikel"> /v1/artikel </a> <ul> <li> <a href="#v1_artikel"> /v1/artikel </a> </li> <li> <a href="#v1_artikel__id_"> /v1/artikel/{id} </a> </li> </ul> </li> <li> <a href="#v1_artikelkategorien"> /v1/artikelkategorien </a> <ul> <li> <a href="#v1_artikelkategorien"> /v1/artikelkategorien </a> </li> <li> <a href="#v1_artikelkategorien__id_"> /v1/artikelkategorien/{id} </a> </li> </ul> </li> <li> <a href="#v1_eigenschaften"> /v1/eigenschaften </a> <ul> <li> <a href="#v1_eigenschaften"> /v1/eigenschaften </a> </li> <li> <a href="#v1_eigenschaften__id_"> /v1/eigenschaften/{id} </a> </li> </ul> </li> <li> <a href="#v1_eigenschaftenwerte"> /v1/eigenschaftenwerte </a> <ul> <li> <a href="#v1_eigenschaftenwerte"> /v1/eigenschaftenwerte </a> </li> <li> <a href="#v1_eigenschaftenwerte__id_"> /v1/eigenschaftenwerte/{id} </a> </li> </ul> </li> <li> <a href="#v1_belege_angebote"> /v1/belege/angebote </a> <ul> <li> <a href="#v1_belege_angebote"> /v1/belege/angebote </a> </li> <li> <a href="#v1_belege_angebote__id_"> /v1/belege/angebote/{id} </a> </li> </ul> </li> <li> <a href="#v1_belege_auftraege"> /v1/belege/auftraege </a> <ul> <li> <a href="#v1_belege_auftraege"> /v1/belege/auftraege </a> </li> <li> <a href="#v1_belege_auftraege__id_"> /v1/belege/auftraege/{id} </a> </li> </ul> </li> <li> <a href="#v1_belege_lieferscheine"> /v1/belege/lieferscheine </a> <ul> <li> <a href="#v1_belege_lieferscheine"> /v1/belege/lieferscheine </a> </li> <li> <a h
|
|||
|
Host: api.example.com
|
|||
|
Accept: application/json
|
|||
|
Content-Type: application/json; charset=utf-8
|
|||
|
Authorization: Digest XXXXXXXXXXX
|
|||
|
|
|||
|
{
|
|||
|
"name": "Schrauben Meier",
|
|||
|
"telefon": "0987654321"
|
|||
|
}
|
|||
|
</code></pre> <h5 class="title is-5">Aufbau Nutzdaten</h5> <h6 class="title is-6">JSON</h6> <p>JSON-Nutzdaten werden ohne einheitliches Root-Element erwartet. Die zu ändernden Feldnamen werden in der ersten Ebene erwartet.</p> <p><strong>Beispiel JSON:</strong></p> <pre><code class="lang-json">{
|
|||
|
"name": "Schrauben Meier GmbH",
|
|||
|
"strasse": "Dorfstrasse 123",
|
|||
|
"ort": "Musterdorf",
|
|||
|
"plz": "12345",
|
|||
|
"telefon": "0987654321",
|
|||
|
}
|
|||
|
</code></pre> <h6 class="title is-6">XML</h6> <p>XML-Nutzdaten müssen von einem Root-Element umschlossen sein. Der Name des Root-Elements kann beliebig lauten. Die zu ändernden Feldnamen werden in der zweiten Ebene erwartet.</p> <p><strong>Beispiel XML:</strong></p> <pre><code class="lang-xml"><data>
|
|||
|
<name>Schrauben Meier GmbH</name>
|
|||
|
<strasse>Dorfstrasse 123</strasse>
|
|||
|
<ort>Musterdorf</ort>
|
|||
|
<plz>12345</plz>
|
|||
|
<telefon>0987654321</telefon>
|
|||
|
</data>
|
|||
|
</code></pre> </div> </section> <section id="responses" class="subsection" data-spy data-spy-parent="__all_docs"> <h2 class="title is-2">Responses</h2> <div class="content"> <p>Die API liefert Antworten im <code>JSON</code>- oder <code>XML</code>-Format aus; abhängig vom <code>Accept</code>-Header der Anfrage.</p> <p>Es wird die <code>JSON</code>-Ausgabe bevorzugt, wenn der <code>Accept</code>-Header fehlt oder ein nicht unterstütztes Format aufweist.</p> <h4 class="title is-4">Content-Types</h4> <p>Antworten werden mit dem Content-Type <code>application/json</code> oder <code>application/xml</code> ausgeliefert; abhängig vom gesendeten Format.</p> <h4 class="title is-4">Zeichensatz</h4> <p>Alle Antworten sind <code>UTF-8</code> kodiert.</p> <h4 class="title is-4">Response-Body</h4> <h5 class="title is-5">Erfolgreiche Anfrage</h5> <p>Der Response-Body einer erfolgreichen Anfrage beinhaltet immer ein <code>data</code>-Property als Root-Element.</p> <h6 class="title is-6">Einzelne Ressource</h6> <p><strong>Beispiel mit einzelnem Ergebnis:</strong></p> <pre><code>{
|
|||
|
"data": {
|
|||
|
"id": 1,
|
|||
|
"title": "Bernhardt Bieber"
|
|||
|
}
|
|||
|
}
|
|||
|
</code></pre> <h6 class="title is-6">Mehrere Ressourcen</h6> <p>Anworten mit mehreren Ressourcen beinhalten zusätzlich ein <code>pagination</code> Root-Element.</p> <p><strong>Beispiel mit mehreren Ergebnissen:</strong></p> <pre><code>{
|
|||
|
"data": [
|
|||
|
{
|
|||
|
"id": 1,
|
|||
|
"title": "Phillipp Pabst"
|
|||
|
},
|
|||
|
{
|
|||
|
"id": 2,
|
|||
|
"name": "Peter Pfaff"
|
|||
|
}
|
|||
|
],
|
|||
|
"pagination": {
|
|||
|
"items_total": 50,
|
|||
|
"items_current": 20,
|
|||
|
"items_per_page": 20,
|
|||
|
"page_current": 1,
|
|||
|
"page_last": 3
|
|||
|
}
|
|||
|
}
|
|||
|
</code></pre> <p>Die Paginierung lässt sich über die GET-Parameter <code>page</code> und <code>items</code> steuern.</p> <h5 class="title is-5">Fehler</h5> <p>Auch Fehler besitzen ein einheitliches Schema mit <code>error</code>-Property als Root-Element:</p> <pre><code>{
|
|||
|
"error": {
|
|||
|
"code": 7452,
|
|||
|
"http_code": 404,
|
|||
|
"message": "Resource not found",
|
|||
|
"href": "http://www.example.com/api/docs.html#error-7452"
|
|||
|
}
|
|||
|
}
|
|||
|
</code></pre> <p>Fehler-Responses beinhalten in der Regel ein <code>code</code> Property. Jeder Code steht für einen spezifischen Fehler. Im Helpdesk (oder dieser Dokumentation) ist zu jedem Code eine genaue Beschreibung und idealerweise Lösungsvorschläge zu finden.</p> </div> </section> <section id="filter_sortierung_paginierung" class="subsection" data-spy data-spy-parent="__all_docs"> <h2 class="title is-2">Filter/Sortierung/Paginierung</h2> <div class="content"> <p>Suchfilter, Sortierung und Paginierung stehen bei allen Endpunkten zur Verfügung die eine Liste zurückliefern.</p> <h4 class="title is-4">Filter</h4> <h5 class="title is-5">Einfache Filter</h5> <p>Beispiel: <code>/resource?ausverkauft=1&typ=produkt</code></p> <p>Welche Filter-Parameter zur Verfügung stehen erfahren Sie in der jeweiligen Endpunkt-Beschreibung.</p> <h5 class="title is-5">Komplexe Filter</h5> <p>Komplexe Filter sind grundsätzlich bei allen Endpunkt verfügbar die eine Liste zurückliefern; unabhängig von den einfachen Filtern.</p> <p>Beispiele:</p> <ul> <li><code>/resource?filter[0][property]=mwst_satz&filter[0][expression]=gte&filter[0][value]=10</code></li> <li><code>/resource?filter[0][property]=beschreibung&filter[0][value]=%Schraube%</code></li> <li><code>/resource?filter[0][property]=land&filter[0][value]=DE&filter[0][operation]=OR&filter[1][property]=land&filter[1][value]=AT</code></li> </ul> <p>Parameter:</p> <ul> <li> <p><code>property</code><br> Feld in dem gesucht werden soll (Pflichtangabe).</p> </li> <li> <p><code>value</code><br> Wert nach dem gesucht werden soll (Pflichtangabe).</p> </li> <li> <p><code>expression</code><br> Vergleichsoperator<br> Mögliche Werte:</p> <ul> <li><code>eq</code> entspricht <strong>=</strong></li> <li><code>not</code> entspricht <strong>!=</strong></li> <li><code>gt</code> entspricht <strong>></strong></li> <li><code>gte</code> entspricht <strong>>=</strong></li> <li><code>lt</code> entspricht <strong><</strong></li> <li><code>lte</code> entspricht <strong><=</strong></li> <li><code>like</code> entspricht <strong>LIKE</strong></li> <li><code>not_like</code> entspricht <strong>NOT LIKE</strong> Default-Wert: <code>like</code></li> </ul> </li> <li> <p><code>operation</code><br> Verknüpfungsart bei der Anwendung mehrerer Filter.<br> Mögliche Werte: <code>and</code>, <code>or</code>.<br> Default-Wert: <code>and</code></p> </li> </ul> <h4 class="title is-4">Sortierung</h4> <p>Welche Felder für die Sortierung zur Verfügung stehen, erfahren Sie in der jeweiligen Endpunkt-Beschreibung.</p> <p>Ein Minuszeichen vor dem Feldnamen kehrt die Sortierung um.</p> <p>Beispiel: <code>/resource?sort=titel,-projekt</code></p> <h4 class="title is-4">Paginierung</h4> <table> <thead> <tr> <th>Parameter</th> <th>Beschreibung</th> <th>Default</th> <th>Wertebereich</th> </tr> </thead> <tbody> <tr> <td><code>page</code></td> <td>Auswahl der Seite</td> <td><code>1</code></td> <td><code>1</code> bis <code>1000</code></td> </tr> <tr> <td><code>items</code></td> <td>Anzahl der Ergebnisse pro Seite</td> <td><code>20</code></td> <td><code>1</code> bis <code>1000</code></td> </tr> </tbody> </table> <p>Beispiel: <code>/resource?page=2&items=5</code></p> </div> </section> <section id="fehler_codes" class="subsection" data-spy data-spy-parent="__all_docs"> <h2 class="title is-2">Fehler-Codes</h2> <div class="content"> <p>TODO: Erklärungen hinzufügen</p> <h4 class="title is-4">Auth-Fehler</h4> <h5 class="title is-5"><a name="error-7411"></a> #7411 - Unauthorized</h5> <p>Zugriff ohne Authentifizierung. Authorization-Header fehlt komplett.</p> <h5 class="title is-5"><a name="error-7412"></a> #7412 - Digest header incomplete</h5> <p>Digest-Header unvollständig; benötigte Teile fehlen.</p> <h5 class="title is-5"><a name="error-7413"></a> #7413 - Api account missing</h5> <p>Es ist kein API-Account angelegt oder aktiv.</p> <h5 class="title is-5"><a name="error-7414"></a> #7414 - Api account invalid</h5> <p>Der verwendete API-Account ist nicht gültig. Eventuell wurde der Account
|
|||
|
"error": {
|
|||
|
"code": 7482,
|
|||
|
"http_code": 500,
|
|||
|
"message": "Webserver configuration incorrect. Pathinfo is invalid.",
|
|||
|
"href": "http://www.example.com/api/docs.html#error-7482"
|
|||
|
}
|
|||
|
}
|
|||
|
</code></pre> <p>Zur Fehleranalyse kann der Debug-Modus aktiviert werden um zusätzliche Informationen über Request- und Konfigurationsvariablen zu erhalten. Debug-Informationen werden nur beim Auftreten eines Fehlers angehangen.</p> <h5 class="title is-5">Beispiel Fehler-Response mit aktivierten Debug-Modus</h5> <pre><code class="lang-json">{
|
|||
|
"error": {
|
|||
|
"code": 7482,
|
|||
|
"http_code": 500,
|
|||
|
"message": "Webserver configuration incorrect. Pathinfo is invalid.",
|
|||
|
"href": "http://www.example.com/api/docs.html#error-7482"
|
|||
|
},
|
|||
|
"debug": {
|
|||
|
"router": {
|
|||
|
"controllerClass": "Xentral\\Modules\\Api\\Controller\\Version1\\StartController",
|
|||
|
"controllerAction": "indexAction",
|
|||
|
"resourceClass": "Xentral\\Modules\\Api\\Resource\\Resource",
|
|||
|
"routerParams": []
|
|||
|
},
|
|||
|
"request": {
|
|||
|
"isFailsafe": false,
|
|||
|
"pathInfo": {
|
|||
|
"actual": "",
|
|||
|
"expected": "/v1/adressen/123"
|
|||
|
},
|
|||
|
"info": {
|
|||
|
"method": "PUT",
|
|||
|
"requestUri": "/api/v1/adressen/123",
|
|||
|
"fullUri": "http://www.example.com/api/v1/adressen/123"
|
|||
|
},
|
|||
|
"serverParams": {
|
|||
|
|
|||
|
// Ausgabe entfernt; wie PHP-Variable `$_SERVER`
|
|||
|
|
|||
|
},
|
|||
|
"header": {
|
|||
|
"Content-Type": "application/json",
|
|||
|
"Authorization": "Digest .........",
|
|||
|
"Host": "www.example.com",
|
|||
|
"Accept": "application/json"
|
|||
|
},
|
|||
|
"getParams": [],
|
|||
|
"postParams": [],
|
|||
|
"additionalParams": []
|
|||
|
}
|
|||
|
}
|
|||
|
}
|
|||
|
</code></pre> <h4 class="title is-4">Debug-Modus aktivieren</h4> <p><strong>Der Debug-Modus ist nicht für Produktiv-Systeme geeignet und sollte nur zur Fehlersuche aktiviert werden.</strong></p> <h5 class="title is-5">Debug-Modus global aktivieren</h5> <p>In der Datei <code>/www/api/index.php</code> die Konstante <code>DEBUG_MODE</code> auf <code>true</code> stellen.</p> <pre><code class="lang-php">define('DEBUG_MODE', true);
|
|||
|
</code></pre> <p>Der Debug-Modus ist dann global für alle API-Accounts aktiviert. Debug-Informationen werden aber nur beim Auftreten eines Fehlers erzeugt.</p> </div> </section> <section id="php_beispiel_clients" class="subsection" data-spy data-spy-parent="__all_docs"> <h2 class="title is-2">PHP Beispiel-Clients</h2> <div class="content"> <h4 class="title is-4">cURL</h4> <pre><code class="lang-php">if (!function_exists('curl_version')) {
|
|||
|
throw new Exception('curl-Extension fehlt');
|
|||
|
}
|
|||
|
|
|||
|
$api = array(
|
|||
|
'url' => 'http://www.example.com/api/',
|
|||
|
'resource' => 'v1/adressen?page=1&items=5',
|
|||
|
'username' => 'Your-Username',
|
|||
|
'password' => 'Your-Passwort',
|
|||
|
);
|
|||
|
|
|||
|
$options = array(
|
|||
|
CURLOPT_URL => $api['url'] . $api['resource'],
|
|||
|
CURLOPT_HEADER => false,
|
|||
|
CURLOPT_HTTPHEADER => array('Accept: application/json'), // oder 'application/xml'
|
|||
|
CURLOPT_RETURNTRANSFER => true,
|
|||
|
CURLOPT_FOLLOWLOCATION => true,
|
|||
|
CURLOPT_HTTPAUTH => CURLAUTH_DIGEST, // Digest Authentifizierung
|
|||
|
CURLOPT_USERPWD => $api['username'] . ':' . $api['password'],
|
|||
|
);
|
|||
|
|
|||
|
$ch = curl_init();
|
|||
|
curl_setopt_array($ch, $options);
|
|||
|
$response = curl_exec($ch);
|
|||
|
|
|||
|
if (curl_errno($ch)) {
|
|||
|
throw new Exception(curl_error($ch));
|
|||
|
}
|
|||
|
|
|||
|
$contentType = curl_getinfo($ch, CURLINFO_CONTENT_TYPE);
|
|||
|
$statusCode = curl_getinfo($ch, CURLINFO_HTTP_CODE);
|
|||
|
$result = json_decode($response, true);
|
|||
|
|
|||
|
echo "<pre>";
|
|||
|
echo "<h1>HTTP-Status: {$statusCode}</h1>";
|
|||
|
echo "<h2>Content-Type: {$contentType}</h2>";
|
|||
|
var_dump($result);
|
|||
|
echo "</pre>";
|
|||
|
|
|||
|
if ($ch != null) {
|
|||
|
curl_close($ch);
|
|||
|
}
|
|||
|
</code></pre> <h4 class="title is-4">Guzzle</h4> <pre><code class="lang-php">if (!class_exists('GuzzleHttp\Client')) {
|
|||
|
throw new Exception('Guzzle konnte nicht gefunden werden');
|
|||
|
}
|
|||
|
|
|||
|
$api = array(
|
|||
|
'url' => 'http://www.example.com/api/',
|
|||
|
'resource' => 'v1/adressen?page=1&items=5',
|
|||
|
'username' => 'Your-Username',
|
|||
|
'password' => 'Your-Passwort',
|
|||
|
);
|
|||
|
|
|||
|
$client = new GuzzleHttp\Client(array(
|
|||
|
'base_url' => $api['url'],
|
|||
|
));
|
|||
|
|
|||
|
$options = array(
|
|||
|
'headers' => array('Accept' => 'application/json'), // oder 'application/xml'
|
|||
|
'auth' => array($api['username'], $api['password'], 'digest'), // Digest Authentifizierung
|
|||
|
);
|
|||
|
$request = $client->createRequest('GET', $api['resource'], $options);
|
|||
|
$response = $client->send($request);
|
|||
|
|
|||
|
$contentType = $response->getHeader('Content-Type');
|
|||
|
$statusCode = $response->getStatusCode();
|
|||
|
$statusMsg = $response->getReasonPhrase();
|
|||
|
$result = json_decode($response->getBody()->getContents(), true);
|
|||
|
|
|||
|
echo "<pre>";
|
|||
|
echo "<h1>HTTP-Status: {$statusCode} {$statusMsg}</h1>";
|
|||
|
echo "<h2>Content-Type: {$contentType}</h2>";
|
|||
|
var_dump($result);
|
|||
|
echo "</pre>";
|
|||
|
</code></pre> </div> </section> <section id="webserver_konfiguration" class="subsection" data-spy data-spy-parent="__all_docs"> <h2 class="title is-2">Webserver-Konfiguration</h2> <div class="content"> <h4 class="title is-4"><a name="apache"></a> Apache</h4> <p>Damit die API richtig funktioniert sollte <code>mod_rewrite</code> aktiviert sein.</p> <p>Der Aufruf ohne <code>mod_rewrite</code> ist ebenfalls möglich, dann muss allerdings die index.php in der URL vorkommen: z.B.: <code>/www/api/index.php/v1/adressen</code></p> <h5 class="title is-5">mod_rewrite aktivieren</h5> <pre><code>$ sudo a2enmod rewrite
|
|||
|
Enabling module rewrite.
|
|||
|
To activate the new configuration, you need to run:
|
|||
|
systemctl restart apache2
|
|||
|
|
|||
|
$ sudo systemctl restart apache2
|
|||
|
</code></pre> <h5 class="title is-5">.htaccess Einbindung erlauben</h5> <p>Bei Ubuntu- und Debian-basierten Betriebssystemen geschieht das für den gesamten Webserver in der Datei <code>/etc/apache2/apache2.conf</code>. Dort nach folgendem Eintrag suchen:</p> <pre><code><Directory /var/www/>
|
|||
|
Options Indexes FollowSymLinks
|
|||
|
AllowOverride None
|
|||
|
Require all granted
|
|||
|
</Directory>
|
|||
|
</code></pre> <p>Hier muss das <code>AllowOverride None</code> zu <code>AllowOverride All</code> geändert werden. Anschließend die Apache2-Konfiguration neu einlesen mit: <code>sudo service apache2 reload</code>.</p> <p>Wichtig: Diese Anpassung ist nur exemplarisch. Aus Sicherheitsgründen sollten Sie die Einstellung nicht für den gesamten Webserver erlauben. Um die Einstellung für einzelne Webseites vorzunehmen, sollten sie die entsprechende VHost-Konfiguration anpassen.</p> <h5 class="title is-5">Beispiel VHost-Konfiguration für Apache 2.4</h5> <pre><code><VirtualHost *:80>
|
|||
|
# ServerName auskommentieren falls Sie per IP zugreifen
|
|||
|
ServerName xentral.example.com
|
|||
|
ServerAdmin webmaster@example.com
|
|||
|
|
|||
|
# Pfad zum www-Verzeichnis ihrer Xentral-Installation
|
|||
|
DocumentRoot /var/www/xentral/www
|
|||
|
|
|||
|
<Directory /var/www/xentral/www/>
|
|||
|
AllowOverride All
|
|||
|
Require all granted
|
|||
|
</Directory>
|
|||
|
|
|||
|
ErrorLog ${APACHE_LOG_DIR}/xentral-error.log
|
|||
|
CustomLog ${APACHE_LOG_DIR}/xentral-access.log combined
|
|||
|
</VirtualHost>
|
|||
|
</code></pre> <h4 class="title is-4"><a name="nginx"></a> Nginx</h4> <h5 class="title is-5">Beispiel-Konfiguration</h5> <pre><code>server {
|
|||
|
listen 80 default_server;
|
|||
|
listen [::]:80 default_server;
|
|||
|
|
|||
|
root /var/www/xentral/www;
|
|||
|
|
|||
|
index index.php index.html index.htm;
|
|||
|
|
|||
|
server_name www.example.com;
|
|||
|
|
|||
|
location / {
|
|||
|
# First attempt to serve request as file, then
|
|||
|
# as directory, then fall back to displaying a 404.
|
|||
|
try_files $uri $uri/ =404;
|
|||
|
}
|
|||
|
|
|||
|
location /api/ {
|
|||
|
# '/api/' befindet sich relativ zum Document-Root und muss ggf. angepasst werden.
|
|||
|
try_files $uri $uri/ @xentral_api;
|
|||
|
}
|
|||
|
|
|||
|
location @xentral_api {
|
|||
|
# '/api/' befindet sich relativ zum Document-Root und muss ggf. angepasst werden.
|
|||
|
rewrite ^/api/(.*)$ /api/index.php/$1 last;
|
|||
|
}
|
|||
|
|
|||
|
location ~ [^/]\.php(/|$) {
|
|||
|
# Path Info korrekt an PHP-Skript weitergeben
|
|||
|
fastcgi_split_path_info ^(.+?\.php)(/.*)$;
|
|||
|
if (!-f $document_root$fastcgi_script_name) {
|
|||
|
return 404;
|
|||
|
}
|
|||
|
|
|||
|
# Mitigate https://httpoxy.org/ vulnerabilities
|
|||
|
fastcgi_param HTTP_PROXY "";
|
|||
|
|
|||
|
# With php-fpm (or other unix sockets):
|
|||
|
fastcgi_pass unix:/var/run/php/php-fpm.sock;
|
|||
|
# With php-cgi (or other tcp sockets):
|
|||
|
#fastcgi_pass 127.0.0.1:9000;
|
|||
|
|
|||
|
fastcgi_index index.php;
|
|||
|
|
|||
|
include fastcgi_params;
|
|||
|
fastcgi_param PATH_INFO $fastcgi_path_info;
|
|||
|
fastcgi_param PATH_TRANSLATED $document_root$fastcgi_path_info;
|
|||
|
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
|
|||
|
}
|
|||
|
|
|||
|
# deny access to .htaccess files, if Apache's document root concurs with nginx's one
|
|||
|
location ~ /\.ht {
|
|||
|
deny all;
|
|||
|
}
|
|||
|
}
|
|||
|
</code></pre> <p>Außerdem muss <code>cgi.fix_pathinfo</code> in der php.ini auf <code>1</code> gestellt sein (Default).</p> <p>Quelle: <a href="https://www.nginx.com/resources/wiki/start/topics/examples/phpfcgi/">https://www.nginx.com/resources/wiki/start/topics/examples/phpfcgi/</a></p> <h4 class="title is-4"><a name="failsafe"></a> Failsafe-Alternative</h4> <p>Sollte die Konfiguration des Webservers Probleme bereiten, oder aus anderen Gründen nicht möglich sein, so gibt es die Möglichkeit die API ohne Anpassung der Webserver-Konfiguration zu nutzen.</p> <p>Der Endpunkt wird dann nicht als Teil der Pfades übergeben, sondern als Query-Parameter <code>path</code>.</p> <p>Beispiel: <code>/api/index.php?path=/v1/artikelkategorien&sort=bezeichnung</code></p> </div> </section> <section id="standard_api_aufrufe" class="subsection" data-spy data-spy-parent="__all_docs"> <h2 class="title is-2">Standard API-Aufrufe</h2> <div class="content"> <p>Es gibt auch die Möglichkeit die standard API über die neue URL abzurufen.</p> <p>Struktur: <code>http://www.example.com/api/{Action}</code></p> <p>Beispiel: <code>http://www.example.com/api/ArtikelGet</code></p> <p>Eine Übersicht der möglichen Requests/Actions mit Beispielen: <a href="https://xentral.biz/helpdesk/api">https://xentral.biz/helpdesk/api</a></p> <p><strong>In diesem Fall erwartet die API immer einen POST-Request und die Nutzdaten müssen im Request-Body mitgeschickt werden.</strong></p> </div> </section> <section id="test_system" class="subsection" data-spy data-spy-parent="__all_docs"> <h2 class="title is-2">Test-System</h2> <div class="content"> <p>Um auf die API eines <a href="https://xentral.com/helpdesk/testsystem" target="_blank">Test-Systems</a> zugreifen zu können, kann im HTTP-Header <code>MultiDb</code> der Datenbankname des Test-Systems angegeben werden. Der Header muss bei jedem Request mitgeschickt werden.</p> <h5 class="title is-5">Beispiel HTTP-Request</h5> <pre><code class="lang-http">GET /api/v1/adressen HTTP/1.1
|
|||
|
Host: www.example.com
|
|||
|
Accept: application/json
|
|||
|
MultiDb: xentral_test
|
|||
|
</code></pre> </div> </section> </section> <section id="__all_resources" class="section" data-spy> <h2 class="title is-2">Resources</h2> <div id="v1_aboartikel" class="group" data-spy data-spy-parent="__all_resources"> <header class="group-header"> <div class="group-title"> <h3 class="title is-3">/v1/aboartikel</h3> </div> </header> <!-- list of methods for /v1/aboartikel --> <!-- begin of resource block for GET /v1/aboartikel --> <div id="v1_aboartikel_get" class="group-endpoint" data-spy data-spy-parent="v1_aboartikel"> <header> <h4 class="title is-4 is-anchored"> Abo-Artikel abrufen <a class="anchor" href="#v1_aboartikel_get">¶</a> <div class="subtitle is-6"> <strong class="method is-get">GET</strong> <span class="value">/v1/aboartikel</span> </div> </h4> <div class="content"> <p>Endpunkt zum Abrufen von Abo-Artikeln.</p> <p>Permission: <code>list_subscriptions</code></p> </div> </header> <div> <h5 class="title is-5">Request</h5> <div class="indent"> <h6 class="title is-6">Query Parameters</h6> <table class="table is-property-list"> <tbody> <tr> <th scope="row"> bezeichnung <div class="typedef-type">string, optional</div> </th> <td> <div class="content"> <p>Suche nach Abo-Artikel-Bezeichnung (ungefähre Übereinstimmung)</p> </div> </td> </tr> <tr> <th scope="row"> bezeichnung_equals <div class="typedef-type">string, optional</div> </th> <td> <div class="content"> <p>Suche nach Abo-Artikel-Bezeichnung (genaue Übereinstimmung)</p> </div> </td> </tr> <tr> <th scope="row"> bezeichnung_startswith <div class="typedef-type">string, optional</div> </th> <td> <div class="content"> <p>Suche nach Abo-Artikel-Bezeichnung (Übereinstimmung am Anfang)</p> </div> </td> </tr> <tr> <th scope="row"> bezeichnung_endswith <div class="typedef-type">string, optional</div> </th> <td> <div class="content"> <p>Suche nach Abo-Artikel-Bezeichnung (Übereinstimmung am Ende)</p> </div> </td> </tr> <tr> <th scope="row"> rabatt <div class="typedef-type">number, optional</div> </th> <td> <div class="content"> <p>Suche nach Rabatt in Prozent (genaue Übereinstimmung)</p> </div> </td> </tr> <tr> <th scope="row"> rabatt_gt <div class="typedef-type">number, optional</div> </th> <td> <div class="content"> <p>Suche nach Rabatt in Prozent (Rabatt größer Suchwert)</p> </div> </td> </tr> <tr> <th scope="row"> rabatt_gte <div class="typedef-type">number, optional</div> </th> <td> <div class="content"> <p>Suche nach Rabatt in Prozent (Rabatt größer gleich Suchwert)</p> </div> </td> </tr> <tr> <th scope="row"> rabatt_lt <div class="typedef-type">number, optional</div> </th> <td> <div class="content"> <p>Suche nach Rabatt in Prozent (Rabatt kleiner Suchwert)</p> </div> </td> </tr> <tr> <th scope="row"> rabatt_lte <div class="typedef-type">number, optional</div> </th> <td> <div class="content"> <p>Suche nach Rabatt in Prozent (Rabatt kleiner gleich Suchwert)</p> </div> </td> </tr> <tr> <th scope="row"> preis <div class="typedef-type">number, optional</div> </th> <td> <div class="content"> <p>Suche nach Preis (genaue Übereinstimmung)</p> </div> </td> </tr> <tr> <th scope="row"> preis_gt <div class="typedef-type">number, optional</div> </th> <td> <div class="content"> <p>Suche nach Preis (Preis größer Suchwert)</p> </div> </td> </tr> <tr> <th scope="row"> preis_gte <div class="typedef-type">number, optional</div> </th> <td> <div class="content"> <p>Suche nach Preis (Preis größer gleich Suchwert)</p> </div> </td> </tr> <tr> <th scope="row"> preis_lt <div class="typedef-type">number, optional</div> </th> <td> <div class="content"> <p>Suche nach Preis (Preis kleiner Suchwert)</p> </div> </td> </tr> <tr> <th scope="row"> preis_lte <div class="typedef-type">number, optional</div> </th> <td> <div class="content"> <p>Suche nach Preis (Preis kleiner gleich Suchwert)</p> </div> </td> </tr> <tr> <th scope="row"> menge <div class="typedef-type">integer, optional</div> </th> <td> <div class="content"> <p>Suche nach Menge (Menge Übereinstimmung)</p> </div> </td> </tr> <tr> <th scope="row"> menge_gt <div class="typedef-type">integer, optional</div> </th> <td> <div
|
|||
|
"bezeichnung": "Abo-Artikel 001",
|
|||
|
"artikelnummer": "700006",
|
|||
|
"preis": 9.52,
|
|||
|
"zahlzyklus": 2,
|
|||
|
"preisart": "wochen",
|
|||
|
"kundennummer": "10001"
|
|||
|
}
|
|||
|
</code></pre> </details> </li> </ul> </div> </div> </div> </div> <h5 class="title is-5">Response</h5> <div class="tabbable is-vertical" data-component="tabbable" data-tabbable-id="v1_aboartikel_post_response"> <header class="tabs is-boxed"> <ul class="tabbable-tabs" data-tabbable-tabs="v1_aboartikel_post_response"> <li> <a id="v1_aboartikel_post_response_0" href="#v1_aboartikel_post_response_0" data-tab="0"> <span class="status" data-code="201"></span> </a> </li> </ul> </header> <div class="tabbable-contents" data-tabbable-contents="v1_aboartikel_post_response"> <div data-tab-content="0"> <div class="content"> <p>Request erfolgreich; Angelegter Abo-Artikel wird zurückgeliefert</p> </div> <div class="tabbable" data-component="tabbable" data-tabbable-id="undefined_body"> <header class="tabs is-boxed"> <strong class="title is-6">Body</strong> <ul class="tabbable-tabs" data-tabbable-tabs="undefined_body"> <li> <a id="v1_aboartikel_post_body_0" href="#v1_aboartikel_post_body_0" data-tab="0"> application/json </a> </li> </ul> </header> <div class="tabbable-contents" data-tabbable-contents="undefined_body"> <div data-tab-content="0"> <h6 class="title is-6"></h6> <ul> <li> <details> <summary>Example</summary> <pre><code>{
|
|||
|
"success": true,
|
|||
|
"data": {
|
|||
|
"id": 21,
|
|||
|
"bezeichnung": "Abo-Artikel 001",
|
|||
|
"beschreibung": "",
|
|||
|
"beschreibung_ersetzen": 0,
|
|||
|
"startdatum": "2019-05-27",
|
|||
|
"enddatum": "0000-00-00",
|
|||
|
"abgerechnet_bis": "0000-00-00",
|
|||
|
"zahlzyklus": 2,
|
|||
|
"preis": "9.5200",
|
|||
|
"rabatt": "0.00",
|
|||
|
"waehrung": "EUR",
|
|||
|
"menge": 0,
|
|||
|
"preisart": "wochen",
|
|||
|
"dokumenttyp": "rechnung",
|
|||
|
"artikel": 6,
|
|||
|
"gruppe": 0,
|
|||
|
"adresse": 3,
|
|||
|
"kundennummer": "10000",
|
|||
|
"reihenfolge": 1,
|
|||
|
"projekt": 0
|
|||
|
}
|
|||
|
}
|
|||
|
</code></pre> </details> </li> </ul> </div> </div> </div> </div> </div> </div> </div> </div> <!-- end of resource block for POST /v1/aboartikel --> <!-- end of list of methods for /v1/aboartikel --> <!-- list of methods for /v1/aboartikel/{id} --> <span id="v1_aboartikel__id_" class="group-resource-group-marker" data-spy data-spy-parent="v1_aboartikel"></span> <!-- begin of resource block for GET /v1/aboartikel/{id} --> <div id="v1_aboartikel__id__get" class="group-endpoint" data-spy data-spy-parent="v1_aboartikel__id_"> <header> <h4 class="title is-4 is-anchored"> Einzelnen Abo-Artikel abrufen <a class="anchor" href="#v1_aboartikel__id__get">¶</a> <div class="subtitle is-6"> <strong class="method is-get">GET</strong> <span class="value">/v1/aboartikel/{id}</span> </div> </h4> <div class="content"> <p>Einzelnen Abo-Artikel abrufen</p> <p>Permission: <code>edit_subscription</code></p> </div> </header> <div> <h5 class="title is-5">Request</h5> <div class="indent"> <h6 class="title is-6">Path Variables</h6> <table class="table is-property-list"> <tbody> <tr> <th scope="row"> id <div class="typedef-type">integer, <strong class="typedef-required">required</strong></div> </th> <td> <div class="content"> <p>Abo-Artikel-ID</p> </div> </td> </tr> </tbody> </table> </div> </div> </div> <!-- end of resource block for GET /v1/aboartikel/{id} --> <!-- begin of resource block for PUT /v1/aboartikel/{id} --> <div id="v1_aboartikel__id__put" class="group-endpoint" data-spy data-spy-parent="v1_aboartikel__id_"> <header> <h4 class="title is-4 is-anchored"> Abo-Artikel bearbeiten <a class="anchor" href="#v1_aboartikel__id__put">¶</a> <div class="subtitle is-6"> <strong class="method is-put">PUT</strong> <span class="value">/v1/aboartikel/{id}</span> </div> </h4> <div class="content"> <p>Abo-Artikel bearbeiten (Felder siehe "Abo-Artikel anlegen")</p> <p>Permission: <code>view_subscription</code></p> </div> </header> <div> <h5 class="title is-5">Request</h5> <div class="indent"> <h6 class="title is-6">Path Variables</h6> <table class="table is-property-list"> <tbody> <tr> <th scope="row"> id <div class="typedef-type">integer, <strong class="typedef-required">required</strong></div> </th> <td> <div class="content"> <p>Abo-Artikel-ID</p> </div> </td> </tr> </tbody> </table> <div class="tabbable" data-component="tabbable" data-tabbable-id="undefined_body"> <header class="tabs is-boxed"> <strong class="title is-6">Body</strong> <ul class="tabbable-tabs" data-tabbable-tabs="undefined_body"> <li> <a id="v1_aboartikel__id__put_body_0" href="#v1_aboartikel__id__put_body_0" data-tab="0"> application/json </a> </li> </ul> </header> <div class="tabbable-contents" data-tabbable-contents="undefined_body"> <div data-tab-content="0"> <h6 class="title is-6"></h6> <ul> <li> <details> <summary>Example</summary> <pre><code>{
|
|||
|
"bezeichnung": "Abo-Artikel 001",
|
|||
|
"beschreibung_ersetzen": 0,
|
|||
|
"startdatum": "2019-01-01",
|
|||
|
"enddatum": "2019-12-31",
|
|||
|
"rabatt": "3.00",
|
|||
|
"zahlzyklus": 1,
|
|||
|
"waehrung": "EUR",
|
|||
|
"preisart": "wochen",
|
|||
|
"dokumenttyp": "rechnung",
|
|||
|
"kundennummer": "10000"
|
|||
|
}
|
|||
|
</code></pre> </details> </li> </ul> </div> </div> </div> </div> <h5 class="title is-5">Response</h5> <div class="tabbable is-vertical" data-component="tabbable" data-tabbable-id="v1_aboartikel__id__put_response"> <header class="tabs is-boxed"> <ul class="tabbable-tabs" data-tabbable-tabs="v1_aboartikel__id__put_response"> <li> <a id="v1_aboartikel__id__put_response_0" href="#v1_aboartikel__id__put_response_0" data-tab="0"> <span class="status" data-code="200"></span> </a> </li> </ul> </header> <div class="tabbable-contents" data-tabbable-contents="v1_aboartikel__id__put_response"> <div data-tab-content="0"> <div class="content"> <p>Request erfolgreich; Aktualisierter Abo-Artikel wird zurückgeliefert</p> </div> <div class="tabbable" data-component="tabbable" data-tabbable-id="undefined_body"> <header class="tabs is-boxed"> <strong class="title is-6">Body</strong> <ul class="tabbable-tabs" data-tabbable-tabs="undefined_body"> <li> <a id="v1_aboartikel__id__put_body_0" href="#v1_aboartikel__id__put_body_0" data-tab="0"> application/json </a> </li> </ul> </header> <div class="tabbable-contents" data-tabbable-contents="undefined_body"> <div data-tab-content="0"> <h6 class="title is-6"></h6> <ul> <li> <details> <summary>Example</summary> <pre><code>{
|
|||
|
"success": true,
|
|||
|
"data": {
|
|||
|
"id": 1,
|
|||
|
"bezeichnung": "Abo-Artikel 001",
|
|||
|
"beschreibung": "",
|
|||
|
"beschreibung_ersetzen": 0,
|
|||
|
"startdatum": "2019-01-01",
|
|||
|
"enddatum": "2019-12-31",
|
|||
|
"abgerechnet_bis": "2019-07-31",
|
|||
|
"zahlzyklus": 1,
|
|||
|
"preis": "0.17",
|
|||
|
"rabatt": "3.00",
|
|||
|
"waehrung": "EUR",
|
|||
|
"menge": 100,
|
|||
|
"preisart": "wochen",
|
|||
|
"dokumenttyp": "rechnung",
|
|||
|
"artikel": 2,
|
|||
|
"gruppe": 1,
|
|||
|
"adresse": 3,
|
|||
|
"kundennummer": "10000",
|
|||
|
"reihenfolge": 1,
|
|||
|
"projekt": 0
|
|||
|
}
|
|||
|
}
|
|||
|
</code></pre> </details> </li> </ul> </div> </div> </div> </div> </div> </div> </div> </div> <!-- end of resource block for PUT /v1/aboartikel/{id} --> <!-- begin of resource block for DELETE /v1/aboartikel/{id} --> <div id="v1_aboartikel__id__delete" class="group-endpoint" data-spy data-spy-parent="v1_aboartikel__id_"> <header> <h4 class="title is-4 is-anchored"> Abo-Artikel löschen <a class="anchor" href="#v1_aboartikel__id__delete">¶</a> <div class="subtitle is-6"> <strong class="method is-delete">DELETE</strong> <span class="value">/v1/aboartikel/{id}</span> </div> </h4> <div class="content"> <p>Endpunkt zum Löschen von Abo-Artikeln</p> <p>Permission: <code>delete_subscription</code></p> </div> </header> <div> <h5 class="title is-5">Request</h5> <div class="indent"> <h6 class="title is-6">Path Variables</h6> <table class="table is-property-list"> <tbody> <tr> <th scope="row"> id <div class="typedef-type">integer, <strong class="typedef-required">required</strong></div> </th> <td> <div class="content"> <p>Abo-Artikel-ID</p> </div> </td> </tr> </tbody> </table> </div> <h5 class="title is-5">Response</h5> <div class="tabbable is-vertical" data-component="tabbable" data-tabbable-id="v1_aboartikel__id__delete_response"> <header class="tabs is-boxed"> <ul class="tabbable-tabs" data-tabbable-tabs="v1_aboartikel__id__delete_response"> <li> <a id="v1_aboartikel__id__delete_response_0" href="#v1_aboartikel__id__delete_response_0" data-tab="0"> <span class="status" data-code="200"></span> </a> </li> <li> <a id="v1_aboartikel__id__delete_response_1" href="#v1_aboartikel__id__delete_response_1" data-tab="1"> <span class="status" data-code="404"></span> </a> </li> </ul> </header> <div class="tabbable-contents" data-tabbable-contents="v1_aboartikel__id__delete_response"> <div data-tab-content="0"> <div class="content"> <p>Request erfolgreich; id des gelöschten Aboartikels wird zurückgegeben</p> </div> <div class="tabbable" data-component="tabbable" data-tabbable-id="undefined_body"> <header class="tabs is-boxed"> <strong class="title is-6">Body</strong> <ul class="tabbable-tabs" data-tabbable-tabs="undefined_body"> <li> <a id="v1_aboartikel__id__delete_body_0" href="#v1_aboartikel__id__delete_body_0" data-tab="0"> application/json </a> </li> </ul> </header> <div class="tabbable-contents" data-tabbable-contents="undefined_body"> <div data-tab-content="0"> <h6 class="title is-6"></h6> <ul> <li> <details> <summary>Example</summary> <pre><code>{
|
|||
|
"success": true,
|
|||
|
"data": {
|
|||
|
"id": 1
|
|||
|
}
|
|||
|
}
|
|||
|
</code></pre> </details> </li> </ul> </div> </div> </div> </div> <div data-tab-content="1"> <div class="content"> <p>id wurde nicht gefunden</p> </div> <div class="tabbable" data-component="tabbable" data-tabbable-id="undefined_body"> <header class="tabs is-boxed"> <strong class="title is-6">Body</strong> <ul class="tabbable-tabs" data-tabbable-tabs="undefined_body"> <li> <a id="v1_aboartikel__id__delete_body_0" href="#v1_aboartikel__id__delete_body_0" data-tab="0"> application/json </a> </li> </ul> </header> <div class="tabbable-contents" data-tabbable-contents="undefined_body"> <div data-tab-content="0"> <h6 class="title is-6"></h6> <ul> <li> <details> <summary>Example</summary> <pre><code>{
|
|||
|
"error": {
|
|||
|
"code": 7452,
|
|||
|
"http_code": 404,
|
|||
|
"message": "Resource not found",
|
|||
|
"href": "http://localhost/xentral/20.1/www/api/docs.html#error-7452"
|
|||
|
}
|
|||
|
}
|
|||
|
</code></pre> </details> </li> </ul> </div> </div> </div> </div> </div> </div> </div> </div> <!-- end of resource block for DELETE /v1/aboartikel/{id} --> <!-- end of list of methods for /v1/aboartikel/{id} --> </div> <div id="v1_abogruppen" class="group" data-spy data-spy-parent="__all_resources"> <header class="group-header"> <div class="group-title"> <h3 class="title is-3">/v1/abogruppen</h3> </div> </header> <!-- list of methods for /v1/abogruppen --> <!-- begin of resource block for GET /v1/abogruppen --> <div id="v1_abogruppen_get" class="group-endpoint" data-spy data-spy-parent="v1_abogruppen"> <header> <h4 class="title is-4 is-anchored"> Abo-Gruppen abrufen <a class="anchor" href="#v1_abogruppen_get">¶</a> <div class="subtitle is-6"> <strong class="method is-get">GET</strong> <span class="value">/v1/abogruppen</span> </div> </h4> <div class="content"> <p>Endpunkt zum Abrufen von Abo-Gruppen</p> <p>Permission: <code>list_subscription_groups</code></p> </div> </header> <div> <h5 class="title is-5">Request</h5> <div class="indent"> <h6 class="title is-6">Query Parameters</h6> <table class="table is-property-list"> <tbody> <tr> <th scope="row"> bezeichnung <div class="typedef-type">string, optional</div> </th> <td> <div class="content"> <p>Suche nach bestimmter Abo-Gruppen-Bezeichnung (ungefähre Übereinstimmung)</p> </div> </td> </tr> <tr> <th scope="row"> bezeichnung_equals <div class="typedef-type">string, optional</div> </th> <td> <div class="content"> <p>Suche nach bestimmter Abo-Gruppen-Bezeichnung (genaue Übereinstimmung)</p> </div> </td> </tr> <tr> <th scope="row"> bezeichnung_startswith <div class="typedef-type">string, optional</div> </th> <td> <div class="content"> <p>Suche nach bestimmter Abo-Gruppen-Bezeichnung (Übereinstimmung am Anfang)</p> </div> </td> </tr> <tr> <th scope="row"> bezeichnung_endswith <div class="typedef-type">string, optional</div> </th> <td> <div class="content"> <p>Suche nach bestimmter Abo-Gruppen-Bezeichnung (Übereinstimmung am Ende)</p> </div> </td> </tr> <tr> <th scope="row"> gruppensumme <div class="typedef-type">integer, optional</div> </th> <td> <div class="content"> <p>Suche nach Gruppensumme-Kennzeichen (1 = aktiv / 0 = inaktiv)</p> </div> </td> </tr> <tr> <th scope="row"> rabatt <div class="typedef-type">number, optional</div> </th> <td> <div class="content"> <p>Suche nach Rabatt in Prozent (genaue Übereinstimmung)</p> </div> </td> </tr> <tr> <th scope="row"> rabatt_gt <div class="typedef-type">number, optional</div> </th> <td> <div class="content"> <p>Suche nach Rabatt in Prozent (Rabatt größer Suchwert)</p> </div> </td> </tr> <tr> <th scope="row"> rabatt_gte <div class="typedef-type">number, optional</div> </th> <td> <div class="content"> <p>Suche nach Rabatt in Prozent (Rabatt größer gleich Suchwert)</p> </div> </td> </tr> <tr> <th scope="row"> rabatt_lt <div class="typedef-type">number, optional</div> </th> <td> <div class="content"> <p>Suche nach Rabatt in Prozent (Rabatt kleiner Suchwert)</p> </div> </td> </tr> <tr> <th scope="row"> rabatt_lte <div class="typedef-type">number, optional</div> </th> <td> <div class="content"> <p>Suche nach Rabatt in Prozent (Rabatt kleiner gleich Suchwert)</p> </div> </td> </tr> <tr> <th scope="row"> projekt <div class="typedef-type">integer, optional</div> </th> <td> <div class="content"> <p>Suche nach bestimmter Projekt-ID (genaue Übereinstimmung)</p> </div> </td> </tr> <tr> <th scope="row"> sort <div class="typedef-type">string, optional</div> </th> <td> <div class="content"> <p>Sortierung (Beispiel: <code>sort=-bezeichnung,rabatt</code>)</p> <p>Verfügbare Felder: <code>bezeichnung</code>, <code>rabatt</code>, <code>reihenfolge</code></p> </div> </td> </tr> <tr> <th scope="row"> include <div class="typedef-type">string, optional</div> </th> <td> <div class="content"> <p>Unter-Resourcen in Resource einbinden (Beispiel: <code>include=projekt</code>)</p> <p>Verfügbare Includes: <code>projekt</code></p> </div> </td> </tr> <tr> <th scope="row"> page <div class="typedef-type">integer , default: <code>1</code>, maximum: 1000,
|
|||
|
"bezeichnung": "Abo-Gruppe Verbrauchsmaterial",
|
|||
|
"rabatt": 2.50,
|
|||
|
"gruppensumme": 1,
|
|||
|
"projekt": 1,
|
|||
|
"reihenfolge": 123
|
|||
|
}
|
|||
|
</code></pre> </details> </li> </ul> </div> </div> </div> </div> <h5 class="title is-5">Response</h5> <div class="tabbable is-vertical" data-component="tabbable" data-tabbable-id="v1_abogruppen_post_response"> <header class="tabs is-boxed"> <ul class="tabbable-tabs" data-tabbable-tabs="v1_abogruppen_post_response"> <li> <a id="v1_abogruppen_post_response_0" href="#v1_abogruppen_post_response_0" data-tab="0"> <span class="status" data-code="201"></span> </a> </li> </ul> </header> <div class="tabbable-contents" data-tabbable-contents="v1_abogruppen_post_response"> <div data-tab-content="0"> <div class="content"> <p>Request erfolgreich; Angelegte Abo-Gruppe wird zurückgeliefert</p> </div> <div class="tabbable" data-component="tabbable" data-tabbable-id="undefined_body"> <header class="tabs is-boxed"> <strong class="title is-6">Body</strong> <ul class="tabbable-tabs" data-tabbable-tabs="undefined_body"> <li> <a id="v1_abogruppen_post_body_0" href="#v1_abogruppen_post_body_0" data-tab="0"> application/json </a> </li> </ul> </header> <div class="tabbable-contents" data-tabbable-contents="undefined_body"> <div data-tab-content="0"> <h6 class="title is-6"></h6> <ul> <li> <details> <summary>Example</summary> <pre><code>{
|
|||
|
"success": true,
|
|||
|
"data": {
|
|||
|
"id": 14,
|
|||
|
"bezeichnung": "Abo-Gruppe Verbrauchsmaterial",
|
|||
|
"beschreibung": "",
|
|||
|
"rabatt": "2.50",
|
|||
|
"gruppensumme": 1,
|
|||
|
"projekt": 1,
|
|||
|
"reihenfolge": 123
|
|||
|
}
|
|||
|
}
|
|||
|
</code></pre> </details> </li> </ul> </div> </div> </div> </div> </div> </div> </div> </div> <!-- end of resource block for POST /v1/abogruppen --> <!-- end of list of methods for /v1/abogruppen --> <!-- list of methods for /v1/abogruppen/{id} --> <span id="v1_abogruppen__id_" class="group-resource-group-marker" data-spy data-spy-parent="v1_abogruppen"></span> <!-- begin of resource block for GET /v1/abogruppen/{id} --> <div id="v1_abogruppen__id__get" class="group-endpoint" data-spy data-spy-parent="v1_abogruppen__id_"> <header> <h4 class="title is-4 is-anchored"> Einzelne Abo-Gruppe abrufen <a class="anchor" href="#v1_abogruppen__id__get">¶</a> <div class="subtitle is-6"> <strong class="method is-get">GET</strong> <span class="value">/v1/abogruppen/{id}</span> </div> </h4> <div class="content"> <p>Einzelne Abo-Gruppe abrufen</p> <p>Permission: <code>view_subscription_group</code></p> </div> </header> <div> <h5 class="title is-5">Request</h5> <div class="indent"> <h6 class="title is-6">Path Variables</h6> <table class="table is-property-list"> <tbody> <tr> <th scope="row"> id <div class="typedef-type">integer, <strong class="typedef-required">required</strong></div> </th> <td> <div class="content"> <p>Abo-Gruppen-ID</p> </div> </td> </tr> </tbody> </table> </div> </div> </div> <!-- end of resource block for GET /v1/abogruppen/{id} --> <!-- begin of resource block for PUT /v1/abogruppen/{id} --> <div id="v1_abogruppen__id__put" class="group-endpoint" data-spy data-spy-parent="v1_abogruppen__id_"> <header> <h4 class="title is-4 is-anchored"> Abo-Gruppe bearbeiten <a class="anchor" href="#v1_abogruppen__id__put">¶</a> <div class="subtitle is-6"> <strong class="method is-put">PUT</strong> <span class="value">/v1/abogruppen/{id}</span> </div> </h4> <div class="content"> <p>Abo-Gruppe bearbeiten (Felder siehe "Abo-Gruppe anlegen")</p> <p>Permission: <code>edit_subscription_group</code></p> </div> </header> <div> <h5 class="title is-5">Request</h5> <div class="indent"> <h6 class="title is-6">Path Variables</h6> <table class="table is-property-list"> <tbody> <tr> <th scope="row"> id <div class="typedef-type">integer, <strong class="typedef-required">required</strong></div> </th> <td> <div class="content"> <p>Abo-Gruppen-ID</p> </div> </td> </tr> </tbody> </table> <div class="tabbable" data-component="tabbable" data-tabbable-id="undefined_body"> <header class="tabs is-boxed"> <strong class="title is-6">Body</strong> <ul class="tabbable-tabs" data-tabbable-tabs="undefined_body"> <li> <a id="v1_abogruppen__id__put_body_0" href="#v1_abogruppen__id__put_body_0" data-tab="0"> application/json </a> </li> </ul> </header> <div class="tabbable-contents" data-tabbable-contents="undefined_body"> <div data-tab-content="0"> <h6 class="title is-6"></h6> <ul> <li> <details> <summary>Example</summary> <pre><code>{
|
|||
|
"bezeichnung": "Abo-Gruppe Verbrauchsmaterial",
|
|||
|
"rabatt": 3.00
|
|||
|
}
|
|||
|
</code></pre> </details> </li> </ul> </div> </div> </div> </div> <h5 class="title is-5">Response</h5> <div class="tabbable is-vertical" data-component="tabbable" data-tabbable-id="v1_abogruppen__id__put_response"> <header class="tabs is-boxed"> <ul class="tabbable-tabs" data-tabbable-tabs="v1_abogruppen__id__put_response"> <li> <a id="v1_abogruppen__id__put_response_0" href="#v1_abogruppen__id__put_response_0" data-tab="0"> <span class="status" data-code="200"></span> </a> </li> </ul> </header> <div class="tabbable-contents" data-tabbable-contents="v1_abogruppen__id__put_response"> <div data-tab-content="0"> <div class="content"> <p>Request erfolgreich; Aktualisierte Abo-Gruppe wird zurückgeliefert</p> </div> <div class="tabbable" data-component="tabbable" data-tabbable-id="undefined_body"> <header class="tabs is-boxed"> <strong class="title is-6">Body</strong> <ul class="tabbable-tabs" data-tabbable-tabs="undefined_body"> <li> <a id="v1_abogruppen__id__put_body_0" href="#v1_abogruppen__id__put_body_0" data-tab="0"> application/json </a> </li> </ul> </header> <div class="tabbable-contents" data-tabbable-contents="undefined_body"> <div data-tab-content="0"> <h6 class="title is-6"></h6> <ul> <li> <details> <summary>Example</summary> <pre><code>{
|
|||
|
"success": true,
|
|||
|
"data": {
|
|||
|
"id": 14,
|
|||
|
"bezeichnung": "Abo-Gruppe Verbrauschsmaterial",
|
|||
|
"beschreibung": "",
|
|||
|
"rabatt": "3.00",
|
|||
|
"gruppensumme": 1,
|
|||
|
"projekt": 1,
|
|||
|
"reihenfolge": 123
|
|||
|
}
|
|||
|
}
|
|||
|
</code></pre> </details> </li> </ul> </div> </div> </div> </div> </div> </div> </div> </div> <!-- end of resource block for PUT /v1/abogruppen/{id} --> <!-- end of list of methods for /v1/abogruppen/{id} --> </div> <div id="v1_adressen" class="group" data-spy data-spy-parent="__all_resources"> <header class="group-header"> <div class="group-title"> <h3 class="title is-3">/v1/adressen</h3> </div> <div class="content"> <p>Adressen anlegen, bearbeiten und abrufen</p> </div> </header> <!-- list of methods for /v1/adressen --> <!-- begin of resource block for GET /v1/adressen --> <div id="v1_adressen_get" class="group-endpoint" data-spy data-spy-parent="v1_adressen"> <header> <h4 class="title is-4 is-anchored"> Adressliste abrufen <a class="anchor" href="#v1_adressen_get">¶</a> <div class="subtitle is-6"> <strong class="method is-get">GET</strong> <span class="value">/v1/adressen</span> </div> </h4> <div class="content"> <p>Adressenliste abrufen</p> <p>Permission: <code>list_addresses</code></p> </div> </header> <div> <h5 class="title is-5">Request</h5> <div class="indent"> <h6 class="title is-6">Query Parameters</h6> <table class="table is-property-list"> <tbody> <tr> <th scope="row"> kundennummer <div class="typedef-type">string , default: <code></code>, optional</div> </th> <td> <div class="content"> <p>Suche nach bestimmter Adresse mit Kundennummer</p> </div> </td> </tr> <tr> <th scope="row"> page <div class="typedef-type">integer , default: <code>1</code>, maximum: 1000, optional</div> </th> <td> <div class="content"> <p>Seitenzahl</p> </div> </td> </tr> <tr> <th scope="row"> items <div class="typedef-type">integer , default: <code>20</code>, maximum: 1000, optional</div> </th> <td> <div class="content"> <p>Anzahl der Ergebnisse pro Seite</p> </div> </td> </tr> </tbody> </table> </div> <h5 class="title is-5">Response</h5> <div class="tabbable is-vertical" data-component="tabbable" data-tabbable-id="v1_adressen_get_response"> <header class="tabs is-boxed"> <ul class="tabbable-tabs" data-tabbable-tabs="v1_adressen_get_response"> <li> <a id="v1_adressen_get_response_0" href="#v1_adressen_get_response_0" data-tab="0"> <span class="status" data-code="200"></span> </a> </li> </ul> </header> <div class="tabbable-contents" data-tabbable-contents="v1_adressen_get_response"> <div data-tab-content="0"> <div class="tabbable" data-component="tabbable" data-tabbable-id="undefined_body"> <header class="tabs is-boxed"> <strong class="title is-6">Body</strong> <ul class="tabbable-tabs" data-tabbable-tabs="undefined_body"> <li> <a id="v1_adressen_get_body_0" href="#v1_adressen_get_body_0" data-tab="0"> application/json </a> </li> </ul> </header> <div class="tabbable-contents" data-tabbable-contents="undefined_body"> <div data-tab-content="0"> <h6 class="title is-6"></h6> <ul> <li> <details> <summary>Example</summary> <pre><code>{
|
|||
|
"data": [
|
|||
|
{
|
|||
|
"id": 7,
|
|||
|
"typ": "firma",
|
|||
|
"sprache": "deutsch",
|
|||
|
"name": "Schrauben Meier",
|
|||
|
"abteilung": "",
|
|||
|
"unterabteilung": "",
|
|||
|
"land": "DE",
|
|||
|
"strasse": "Musterstrasse 6",
|
|||
|
"ort": "Musterdorf",
|
|||
|
"plz": "13245",
|
|||
|
"telefon": "12345678",
|
|||
|
"telefax": "",
|
|||
|
"mobile": "",
|
|||
|
"email": "schrauben@meiermusterdorf.de",
|
|||
|
"projekt": 1,
|
|||
|
"...": "Ausgabe gekürzt"
|
|||
|
},
|
|||
|
{
|
|||
|
"id": 8,
|
|||
|
"...": "Ausgabe gekürzt"
|
|||
|
}
|
|||
|
],
|
|||
|
"pagination": {
|
|||
|
"items_total": 50,
|
|||
|
"items_current": 20,
|
|||
|
"items_per_page": 20,
|
|||
|
"page_current": 1,
|
|||
|
"page_last": 3
|
|||
|
}
|
|||
|
}
|
|||
|
</code></pre> </details> </li> </ul> </div> </div> </div> </div> </div> </div> </div> </div> <!-- end of resource block for GET /v1/adressen --> <!-- begin of resource block for POST /v1/adressen --> <div id="v1_adressen_post" class="group-endpoint" data-spy data-spy-parent="v1_adressen"> <header> <h4 class="title is-4 is-anchored"> Adressen anlegen <a class="anchor" href="#v1_adressen_post">¶</a> <div class="subtitle is-6"> <strong class="method is-post">POST</strong> <span class="value">/v1/adressen</span> </div> </h4> <div class="content"> <p>Neue Adresse anlegen</p> <p>Permission: <code>create_address</code></p> </div> </header> <div> <h5 class="title is-5">Request</h5> <div class="indent"> <div class="tabbable" data-component="tabbable" data-tabbable-id="undefined_body"> <header class="tabs is-boxed"> <strong class="title is-6">Body</strong> <ul class="tabbable-tabs" data-tabbable-tabs="undefined_body"> <li> <a id="v1_adressen_post_body_0" href="#v1_adressen_post_body_0" data-tab="0"> application/json </a> </li> </ul> </header> <div class="tabbable-contents" data-tabbable-contents="undefined_body"> <div data-tab-content="0"> <h6 class="title is-6"></h6> <ul> <li> <details> <summary>Example</summary> <pre><code>{
|
|||
|
"typ": "firma",
|
|||
|
"sprache": "deutsch",
|
|||
|
"name": "Max Muster",
|
|||
|
"land": "DE",
|
|||
|
"strasse": "Musterstrasse 6",
|
|||
|
"ort": "Musterdorf",
|
|||
|
"plz": "12345",
|
|||
|
"telefon": "0821123456789",
|
|||
|
"telefax": "0821123456790",
|
|||
|
"email": "info@maxmuellermuster.de",
|
|||
|
"projekt": 1
|
|||
|
}
|
|||
|
</code></pre> </details> </li> </ul> </div> </div> </div> </div> <h5 class="title is-5">Response</h5> <div class="tabbable is-vertical" data-component="tabbable" data-tabbable-id="v1_adressen_post_response"> <header class="tabs is-boxed"> <ul class="tabbable-tabs" data-tabbable-tabs="v1_adressen_post_response"> <li> <a id="v1_adressen_post_response_0" href="#v1_adressen_post_response_0" data-tab="0"> <span class="status" data-code="200"></span> </a> </li> </ul> </header> <div class="tabbable-contents" data-tabbable-contents="v1_adressen_post_response"> <div data-tab-content="0"> <div class="content"> <p>Request erfolgreich; Angelegte Adresse wird zurückgeliefert</p> </div> <div class="tabbable" data-component="tabbable" data-tabbable-id="undefined_body"> <header class="tabs is-boxed"> <strong class="title is-6">Body</strong> <ul class="tabbable-tabs" data-tabbable-tabs="undefined_body"> <li> <a id="v1_adressen_post_body_0" href="#v1_adressen_post_body_0" data-tab="0"> application/json </a> </li> </ul> </header> <div class="tabbable-contents" data-tabbable-contents="undefined_body"> <div data-tab-content="0"> <h6 class="title is-6"></h6> <ul> <li> <details> <summary>Example</summary> <pre><code>{
|
|||
|
"data": {
|
|||
|
"id": 33,
|
|||
|
"typ": "firma",
|
|||
|
"sprache": "deutsch",
|
|||
|
"name": "Max Muster",
|
|||
|
"abteilung": "",
|
|||
|
"unterabteilung": "",
|
|||
|
"land": "DE",
|
|||
|
"strasse": "Musterstrasse 6",
|
|||
|
"ort": "Musterdorf",
|
|||
|
"plz": "12345",
|
|||
|
"telefon": "0821123456789",
|
|||
|
"telefax": "0821123456790",
|
|||
|
"mobile": "",
|
|||
|
"email": "info@maxmuellermuster.de",
|
|||
|
"projekt": 1,
|
|||
|
"...": "Ausgabe gekürzt"
|
|||
|
}
|
|||
|
}
|
|||
|
</code></pre> </details> </li> </ul> </div> </div> </div> </div> </div> </div> </div> </div> <!-- end of resource block for POST /v1/adressen --> <!-- end of list of methods for /v1/adressen --> <!-- list of methods for /v1/adressen/{id} --> <span id="v1_adressen__id_" class="group-resource-group-marker" data-spy data-spy-parent="v1_adressen"></span> <!-- begin of resource block for GET /v1/adressen/{id} --> <div id="v1_adressen__id__get" class="group-endpoint" data-spy data-spy-parent="v1_adressen__id_"> <header> <h4 class="title is-4 is-anchored"> Einzelne Adresse abrufen <a class="anchor" href="#v1_adressen__id__get">¶</a> <div class="subtitle is-6"> <strong class="method is-get">GET</strong> <span class="value">/v1/adressen/{id}</span> </div> </h4> <div class="content"> <p>Einzelne Adresse abrufen</p> <p>Permission: <code>view_address</code></p> </div> </header> <div> <h5 class="title is-5">Request</h5> <div class="indent"> <h6 class="title is-6">Path Variables</h6> <table class="table is-property-list"> <tbody> <tr> <th scope="row"> id <div class="typedef-type">integer, <strong class="typedef-required">required</strong></div> </th> <td> <div class="content"> <p>Adressen-ID</p> </div> </td> </tr> </tbody> </table> </div> <h5 class="title is-5">Response</h5> <div class="tabbable is-vertical" data-component="tabbable" data-tabbable-id="v1_adressen__id__get_response"> <header class="tabs is-boxed"> <ul class="tabbable-tabs" data-tabbable-tabs="v1_adressen__id__get_response"> <li> <a id="v1_adressen__id__get_response_0" href="#v1_adressen__id__get_response_0" data-tab="0"> <span class="status" data-code="200"></span> </a> </li> <li> <a id="v1_adressen__id__get_response_1" href="#v1_adressen__id__get_response_1" data-tab="1"> <span class="status" data-code="404"></span> </a> </li> </ul> </header> <div class="tabbable-contents" data-tabbable-contents="v1_adressen__id__get_response"> <div data-tab-content="0"> <div class="content"> <p>Request erfolgreich</p> </div> <div class="tabbable" data-component="tabbable" data-tabbable-id="undefined_body"> <header class="tabs is-boxed"> <strong class="title is-6">Body</strong> <ul class="tabbable-tabs" data-tabbable-tabs="undefined_body"> <li> <a id="v1_adressen__id__get_body_0" href="#v1_adressen__id__get_body_0" data-tab="0"> application/json </a> </li> </ul> </header> <div class="tabbable-contents" data-tabbable-contents="undefined_body"> <div data-tab-content="0"> <h6 class="title is-6"></h6> <ul> <li> <details> <summary>Example</summary> <pre><code>{
|
|||
|
"data": {
|
|||
|
"id": 7,
|
|||
|
"typ": "firma",
|
|||
|
"sprache": "deutsch",
|
|||
|
"name": "Schrauben Meier GmbH",
|
|||
|
"abteilung": "",
|
|||
|
"unterabteilung": "",
|
|||
|
"land": "DE",
|
|||
|
"strasse": "Musterstrasse 6",
|
|||
|
"ort": "Musterdorf",
|
|||
|
"plz": "13245",
|
|||
|
"telefon": "12345678",
|
|||
|
"telefax": "",
|
|||
|
"mobile": "",
|
|||
|
"email": "schrauben@meiermusterdorf.de",
|
|||
|
"projekt": 1,
|
|||
|
"...": "Ausgabe gekürzt"
|
|||
|
}
|
|||
|
}
|
|||
|
</code></pre> </details> </li> </ul> </div> </div> </div> </div> <div data-tab-content="1"> <div class="content"> <p>Adresse wurde nicht gefunden</p> </div> <div class="tabbable" data-component="tabbable" data-tabbable-id="undefined_body"> <header class="tabs is-boxed"> <strong class="title is-6">Body</strong> <ul class="tabbable-tabs" data-tabbable-tabs="undefined_body"> <li> <a id="v1_adressen__id__get_body_0" href="#v1_adressen__id__get_body_0" data-tab="0"> application/json </a> </li> </ul> </header> <div class="tabbable-contents" data-tabbable-contents="undefined_body"> <div data-tab-content="0"> <h6 class="title is-6"></h6> <ul> <li> <details> <summary>Example</summary> <pre><code>{
|
|||
|
"error": {
|
|||
|
"code": 7452,
|
|||
|
"http_code": 404,
|
|||
|
"message": "Resource not found",
|
|||
|
"href": "http://www.example.com/api/docs.html#error-7452"
|
|||
|
}
|
|||
|
}
|
|||
|
</code></pre> </details> </li> </ul> </div> </div> </div> </div> </div> </div> </div> </div> <!-- end of resource block for GET /v1/adressen/{id} --> <!-- begin of resource block for PUT /v1/adressen/{id} --> <div id="v1_adressen__id__put" class="group-endpoint" data-spy data-spy-parent="v1_adressen__id_"> <header> <h4 class="title is-4 is-anchored"> Adresse bearbeiten <a class="anchor" href="#v1_adressen__id__put">¶</a> <div class="subtitle is-6"> <strong class="method is-put">PUT</strong> <span class="value">/v1/adressen/{id}</span> </div> </h4> <div class="content"> <p>Adresse bearbeiten</p> <p>Permission: <code>edit_address</code></p> </div> </header> <div> <h5 class="title is-5">Request</h5> <div class="indent"> <h6 class="title is-6">Path Variables</h6> <table class="table is-property-list"> <tbody> <tr> <th scope="row"> id <div class="typedef-type">integer, <strong class="typedef-required">required</strong></div> </th> <td> <div class="content"> <p>Adressen-ID</p> </div> </td> </tr> </tbody> </table> <div class="tabbable" data-component="tabbable" data-tabbable-id="undefined_body"> <header class="tabs is-boxed"> <strong class="title is-6">Body</strong> <ul class="tabbable-tabs" data-tabbable-tabs="undefined_body"> <li> <a id="v1_adressen__id__put_body_0" href="#v1_adressen__id__put_body_0" data-tab="0"> application/json </a> </li> </ul> </header> <div class="tabbable-contents" data-tabbable-contents="undefined_body"> <div data-tab-content="0"> <h6 class="title is-6"></h6> <ul> <li> <details> <summary>Example</summary> <pre><code>{
|
|||
|
"name": "Schrauben Meier GmbH",
|
|||
|
"strasse": "Dorfstrasse 123",
|
|||
|
"ort": "Musterdorf",
|
|||
|
"plz": "12345",
|
|||
|
"telefon": "0987654321"
|
|||
|
}
|
|||
|
</code></pre> </details> </li> </ul> </div> </div> </div> </div> <h5 class="title is-5">Response</h5> <div class="tabbable is-vertical" data-component="tabbable" data-tabbable-id="v1_adressen__id__put_response"> <header class="tabs is-boxed"> <ul class="tabbable-tabs" data-tabbable-tabs="v1_adressen__id__put_response"> <li> <a id="v1_adressen__id__put_response_0" href="#v1_adressen__id__put_response_0" data-tab="0"> <span class="status" data-code="200"></span> </a> </li> </ul> </header> <div class="tabbable-contents" data-tabbable-contents="v1_adressen__id__put_response"> <div data-tab-content="0"> <div class="content"> <p>Request erfolgreich; Aktualisierte Adresse wird zurückgeliefert</p> </div> <div class="tabbable" data-component="tabbable" data-tabbable-id="undefined_body"> <header class="tabs is-boxed"> <strong class="title is-6">Body</strong> <ul class="tabbable-tabs" data-tabbable-tabs="undefined_body"> <li> <a id="v1_adressen__id__put_body_0" href="#v1_adressen__id__put_body_0" data-tab="0"> application/json </a> </li> </ul> </header> <div class="tabbable-contents" data-tabbable-contents="undefined_body"> <div data-tab-content="0"> <h6 class="title is-6"></h6> <ul> <li> <details> <summary>Example</summary> <pre><code>{
|
|||
|
"data": {
|
|||
|
"id": 7,
|
|||
|
"typ": "firma",
|
|||
|
"sprache": "deutsch",
|
|||
|
"name": "Schrauben Meier GmbH",
|
|||
|
"abteilung": "",
|
|||
|
"unterabteilung": "",
|
|||
|
"land": "DE",
|
|||
|
"strasse": "Dorfstrasse 123",
|
|||
|
"ort": "Musterdorf",
|
|||
|
"plz": "12345",
|
|||
|
"telefon": "0987654321",
|
|||
|
"telefax": "",
|
|||
|
"mobile": "",
|
|||
|
"email": "schrauben@meiermusterdorf.de",
|
|||
|
"projekt": 1,
|
|||
|
"...": "Ausgabe gekürzt"
|
|||
|
}
|
|||
|
}
|
|||
|
</code></pre> </details> </li> </ul> </div> </div> </div> </div> </div> </div> </div> </div> <!-- end of resource block for PUT /v1/adressen/{id} --> <!-- end of list of methods for /v1/adressen/{id} --> </div> <div id="v2_adressen" class="group" data-spy data-spy-parent="__all_resources"> <header class="group-header"> <div class="group-title"> <h3 class="title is-3">/v2/adressen</h3> </div> <div class="content"> <p>Adressen abrufen</p> </div> </header> <!-- list of methods for /v2/adressen --> <!-- begin of resource block for GET /v2/adressen --> <div id="v2_adressen_get" class="group-endpoint" data-spy data-spy-parent="v2_adressen"> <header> <h4 class="title is-4 is-anchored"> Adressenliste abrufen <a class="anchor" href="#v2_adressen_get">¶</a> <div class="subtitle is-6"> <strong class="method is-get">GET</strong> <span class="value">/v2/adressen</span> </div> </h4> <div class="content"> <p>Adressenliste abrufen</p> <p>Permission: <code>list_addresses</code></p> </div> </header> <div> <h5 class="title is-5">Request</h5> <div class="indent"> <h6 class="title is-6">Query Parameters</h6> <table class="table is-property-list"> <tbody> <tr> <th scope="row"> projekt <div class="typedef-type">integer, optional</div> </th> <td> <div class="content"> <p>Suche nach bestimmter Projekt-ID (genaue Übereinstimmung)</p> </div> </td> </tr> <tr> <th scope="row"> firma <div class="typedef-type">integer, optional</div> </th> <td> <div class="content"> <p>Suche nach bestimmter Firmen-ID (genaue Übereinstimmung)</p> </div> </td> </tr> <tr> <th scope="row"> rolle <div class="typedef-type">string, optional</div> </th> <td> <div class="content"> <p>Suche nach bestimmter Rolle (Wert <code>kunde</code> oder <code>lieferant</code>)</p> </div> </td> </tr> <tr> <th scope="row"> typ <div class="typedef-type">string, optional</div> </th> <td> <div class="content"> <p>Suche nach bestimmtem Adresstyp (genaue Übereinstimmung)</p> </div> </td> </tr> <tr> <th scope="row"> sprache <div class="typedef-type">string, optional</div> </th> <td> <div class="content"> <p>Suche nach bestimmter Sprache (genaue Übereinstimmung)</p> </div> </td> </tr> <tr> <th scope="row"> waehrung <div class="typedef-type">string, optional</div> </th> <td> <div class="content"> <p>Suche nach bestimmtem Währungscode (genaue Übereinstimmung)</p> </div> </td> </tr> <tr> <th scope="row"> land <div class="typedef-type">string, optional</div> </th> <td> <div class="content"> <p>Suche nach bestimmtem Ländercode (genaue Übereinstimmung)</p> </div> </td> </tr> <tr> <th scope="row"> kundennummer <div class="typedef-type">string, optional</div> </th> <td> <div class="content"> <p>Suche nach bestimmter Kundennummer (ungefähre Übereinstimmung)</p> </div> </td> </tr> <tr> <th scope="row"> kundennummer_equals <div class="typedef-type">string, optional</div> </th> <td> <div class="content"> <p>Suche nach bestimmter Kundennummer (genaue Übereinstimmung)</p> </div> </td> </tr> <tr> <th scope="row"> kundennummer_startswith <div class="typedef-type">string, optional</div> </th> <td> <div class="content"> <p>Suche nach bestimmter Kundennummer (Übereinstimmung am Anfang)</p> </div> </td> </tr> <tr> <th scope="row"> kundennummer_endswith <div class="typedef-type">string, optional</div> </th> <td> <div class="content"> <p>Suche nach bestimmter Kundennummer (Übereinstimmung am Ende)</p> </div> </td> </tr> <tr> <th scope="row"> lieferantennummer <div class="typedef-type">string, optional</div> </th> <td> <div class="content"> <p>Suche nach bestimmter Lieferantennummer (ungefähre Übereinstimmung)</p> </div> </td> </tr> <tr> <th scope="row"> lieferantennummer_equals <div class="typedef-type">string, optional</div> </th> <td> <div class="content"> <p>Suche nach bestimmter Lieferantennummer (genaue Übereinstimmung)</p> </div> </td> </tr> <tr> <th scope="row"> lieferantennummer_startswith <div class="typedef-type">string, optional</div> </th> <td> <div class="content"> <p>Suche nach bestimmter Lieferantennummer (Übereinstimmung am Anfang)</p> </div> </td> </tr> <tr> <th scope="row"> lieferant
|
|||
|
"data": [
|
|||
|
{
|
|||
|
"id": 7,
|
|||
|
"rolle": "lieferant",
|
|||
|
"typ": "firma",
|
|||
|
"sprache": "deutsch",
|
|||
|
"name": "Schrauben Meier",
|
|||
|
"abteilung": "",
|
|||
|
"unterabteilung": "",
|
|||
|
"land": "DE",
|
|||
|
"strasse": "Musterstrasse 6",
|
|||
|
"ort": "Musterdorf",
|
|||
|
"plz": "13245",
|
|||
|
"telefon": "12345678",
|
|||
|
"telefax": "",
|
|||
|
"mobile": "",
|
|||
|
"email": "schrauben@meiermusterdorf.de",
|
|||
|
"projekt": 1,
|
|||
|
"...": "Ausgabe gekürzt"
|
|||
|
},
|
|||
|
{
|
|||
|
"id": 8,
|
|||
|
"...": "Ausgabe gekürzt"
|
|||
|
}
|
|||
|
],
|
|||
|
"pagination": {
|
|||
|
"items_total": 50,
|
|||
|
"items_current": 20,
|
|||
|
"items_per_page": 20,
|
|||
|
"page_current": 1,
|
|||
|
"page_last": 3
|
|||
|
}
|
|||
|
}
|
|||
|
</code></pre> </details> </li> </ul> </div> </div> </div> </div> </div> </div> </div> </div> <!-- end of resource block for GET /v2/adressen --> <!-- end of list of methods for /v2/adressen --> <!-- list of methods for /v2/adressen/{id} --> <span id="v2_adressen__id_" class="group-resource-group-marker" data-spy data-spy-parent="v2_adressen"></span> <!-- begin of resource block for GET /v2/adressen/{id} --> <div id="v2_adressen__id__get" class="group-endpoint" data-spy data-spy-parent="v2_adressen__id_"> <header> <h4 class="title is-4 is-anchored"> Einzelne Adresse abrufen <a class="anchor" href="#v2_adressen__id__get">¶</a> <div class="subtitle is-6"> <strong class="method is-get">GET</strong> <span class="value">/v2/adressen/{id}</span> </div> </h4> <div class="content"> <p>Einzelne Adresse abrufen</p> <p>Permission: <code>view_address</code></p> </div> </header> <div> <h5 class="title is-5">Request</h5> <div class="indent"> <h6 class="title is-6">Path Variables</h6> <table class="table is-property-list"> <tbody> <tr> <th scope="row"> id <div class="typedef-type">integer, <strong class="typedef-required">required</strong></div> </th> <td> <div class="content"> <p>Adressen-ID</p> </div> </td> </tr> </tbody> </table> </div> <h5 class="title is-5">Response</h5> <div class="tabbable is-vertical" data-component="tabbable" data-tabbable-id="v2_adressen__id__get_response"> <header class="tabs is-boxed"> <ul class="tabbable-tabs" data-tabbable-tabs="v2_adressen__id__get_response"> <li> <a id="v2_adressen__id__get_response_0" href="#v2_adressen__id__get_response_0" data-tab="0"> <span class="status" data-code="200"></span> </a> </li> <li> <a id="v2_adressen__id__get_response_1" href="#v2_adressen__id__get_response_1" data-tab="1"> <span class="status" data-code="404"></span> </a> </li> </ul> </header> <div class="tabbable-contents" data-tabbable-contents="v2_adressen__id__get_response"> <div data-tab-content="0"> <div class="content"> <p>Request erfolgreich</p> </div> <div class="tabbable" data-component="tabbable" data-tabbable-id="undefined_body"> <header class="tabs is-boxed"> <strong class="title is-6">Body</strong> <ul class="tabbable-tabs" data-tabbable-tabs="undefined_body"> <li> <a id="v2_adressen__id__get_body_0" href="#v2_adressen__id__get_body_0" data-tab="0"> application/json </a> </li> </ul> </header> <div class="tabbable-contents" data-tabbable-contents="undefined_body"> <div data-tab-content="0"> <h6 class="title is-6"></h6> <ul> <li> <details> <summary>Example</summary> <pre><code>{
|
|||
|
"data": {
|
|||
|
"id": 7,
|
|||
|
"rolle": "lieferant",
|
|||
|
"typ": "firma",
|
|||
|
"sprache": "deutsch",
|
|||
|
"name": "Schrauben Meier GmbH",
|
|||
|
"abteilung": "",
|
|||
|
"unterabteilung": "",
|
|||
|
"land": "DE",
|
|||
|
"strasse": "Musterstrasse 6",
|
|||
|
"ort": "Musterdorf",
|
|||
|
"plz": "13245",
|
|||
|
"telefon": "12345678",
|
|||
|
"telefax": "",
|
|||
|
"mobile": "",
|
|||
|
"email": "schrauben@meiermusterdorf.de",
|
|||
|
"projekt": 1,
|
|||
|
"...": "Ausgabe gekürzt"
|
|||
|
}
|
|||
|
}
|
|||
|
</code></pre> </details> </li> </ul> </div> </div> </div> </div> <div data-tab-content="1"> <div class="content"> <p>Adresse wurde nicht gefunden</p> </div> <div class="tabbable" data-component="tabbable" data-tabbable-id="undefined_body"> <header class="tabs is-boxed"> <strong class="title is-6">Body</strong> <ul class="tabbable-tabs" data-tabbable-tabs="undefined_body"> <li> <a id="v2_adressen__id__get_body_0" href="#v2_adressen__id__get_body_0" data-tab="0"> application/json </a> </li> </ul> </header> <div class="tabbable-contents" data-tabbable-contents="undefined_body"> <div data-tab-content="0"> <h6 class="title is-6"></h6> <ul> <li> <details> <summary>Example</summary> <pre><code>{
|
|||
|
"error": {
|
|||
|
"code": 7452,
|
|||
|
"http_code": 404,
|
|||
|
"message": "Resource not found",
|
|||
|
"href": "http://www.example.com/api/docs.html#error-7452"
|
|||
|
}
|
|||
|
}
|
|||
|
</code></pre> </details> </li> </ul> </div> </div> </div> </div> </div> </div> </div> </div> <!-- end of resource block for GET /v2/adressen/{id} --> <!-- end of list of methods for /v2/adressen/{id} --> </div> <div id="v1_adresstyp" class="group" data-spy data-spy-parent="__all_resources"> <header class="group-header"> <div class="group-title"> <h3 class="title is-3">/v1/adresstyp</h3> </div> <div class="content"> <p>Adresstyp anlegen, bearbeiten und abrufen</p> </div> </header> <!-- list of methods for /v1/adresstyp --> <!-- begin of resource block for GET /v1/adresstyp --> <div id="v1_adresstyp_get" class="group-endpoint" data-spy data-spy-parent="v1_adresstyp"> <header> <h4 class="title is-4 is-anchored"> Adresstypen abrufen <a class="anchor" href="#v1_adresstyp_get">¶</a> <div class="subtitle is-6"> <strong class="method is-get">GET</strong> <span class="value">/v1/adresstyp</span> </div> </h4> <div class="content"> <p>Adresstypen abrufen</p> <p>Permission: <code>list_address_types</code></p> </div> </header> <div> <h5 class="title is-5">Request</h5> <div class="indent"> <h6 class="title is-6">Query Parameters</h6> <table class="table is-property-list"> <tbody> <tr> <th scope="row"> bezeichnung <div class="typedef-type">string, optional</div> </th> <td> <div class="content"> <p>Adresstyp mit bestimmter Bezeichnung suchen (ungefähre Übereinstimmung)</p> </div> </td> </tr> <tr> <th scope="row"> bezeichnung_exakt <div class="typedef-type">string, optional</div> </th> <td> <div class="content"> <p>Adresstyp mit bestimmter Bezeichnung suchen (genaue Übereinstimmung)</p> </div> </td> </tr> <tr> <th scope="row"> type <div class="typedef-type">string, optional</div> </th> <td> <div class="content"> <p>Nach bestimmten Typ filtern (genaue Übereinstimmung)</p> <p>Mögliche Werte: <code>herr</code>, <code>frau</code>, <code>firma</code></p> </div> </td> </tr> <tr> <th scope="row"> projekt <div class="typedef-type">integer, optional</div> </th> <td> <div class="content"> <p>Adresstyp eines Projekts filtern (genaue Übereinstimmung)</p> </div> </td> </tr> <tr> <th scope="row"> netto <div class="typedef-type">boolean, optional</div> </th> <td> <div class="content"> <p>Netto-Adresstypen filtern (1 = netto / 0 = brutto)</p> </div> </td> </tr> <tr> <th scope="row"> aktiv <div class="typedef-type">integer, optional</div> </th> <td> <div class="content"> <p>Aktive/Inaktive Adresstypen filtern (1 = aktiv / 0 = inaktiv)</p> </div> </td> </tr> <tr> <th scope="row"> sort <div class="typedef-type">string, optional</div> </th> <td> <div class="content"> <p>Sortierung (Beispiel: <code>sort=type,-bezeichnung</code>)</p> <p>Verfügbare Felder: <code>bezeichnung</code>, <code>type</code>, <code>projekt</code>, <code>modul</code>, <code>aktiv</code></p> </div> </td> </tr> <tr> <th scope="row"> include <div class="typedef-type">string, optional</div> </th> <td> <div class="content"> <p>Unter-Resourcen in Resource einbinden (Beispiel: <code>include=projekt</code>)</p> <p>Verfügbare Includes: <code>projekt</code></p> </div> </td> </tr> <tr> <th scope="row"> page <div class="typedef-type">integer , default: <code>1</code>, maximum: 1000, optional</div> </th> <td> <div class="content"> <p>Seitenzahl</p> </div> </td> </tr> <tr> <th scope="row"> items <div class="typedef-type">integer , default: <code>20</code>, maximum: 1000, optional</div> </th> <td> <div class="content"> <p>Anzahl der Ergebnisse pro Seite</p> </div> </td> </tr> </tbody> </table> </div> </div> </div> <!-- end of resource block for GET /v1/adresstyp --> <!-- begin of resource block for POST /v1/adresstyp --> <div id="v1_adresstyp_post" class="group-endpoint" data-spy data-spy-parent="v1_adresstyp"> <header> <h4 class="title is-4 is-anchored"> Adresstyp anlegen <a class="anchor" href="#v1_adresstyp_post">¶</a> <div class="subtitle is-6"> <strong class="method is-post">POST</strong> <span class="value">/v1/adresstyp</span> </div> </h4> <div class="content"> <p>Adresstyp anlegen</p> <p>Permission: <code>create_address_type</code></p> </div> </header> <div> <h5 class="title is-5">R
|
|||
|
"type": "herr",
|
|||
|
"bezeichnung": "Gentleman",
|
|||
|
"aktiv": 1,
|
|||
|
"projekt": 1
|
|||
|
}
|
|||
|
</code></pre> </details> </li> </ul> </div> </div> </div> </div> <h5 class="title is-5">Response</h5> <div class="tabbable is-vertical" data-component="tabbable" data-tabbable-id="v1_adresstyp_post_response"> <header class="tabs is-boxed"> <ul class="tabbable-tabs" data-tabbable-tabs="v1_adresstyp_post_response"> <li> <a id="v1_adresstyp_post_response_0" href="#v1_adresstyp_post_response_0" data-tab="0"> <span class="status" data-code="201"></span> </a> </li> </ul> </header> <div class="tabbable-contents" data-tabbable-contents="v1_adresstyp_post_response"> <div data-tab-content="0"> <div class="content"> <p>Request erfolgreich; Angelegter Adresstyp wird zurückgeliefert</p> </div> <div class="tabbable" data-component="tabbable" data-tabbable-id="undefined_body"> <header class="tabs is-boxed"> <strong class="title is-6">Body</strong> <ul class="tabbable-tabs" data-tabbable-tabs="undefined_body"> <li> <a id="v1_adresstyp_post_body_0" href="#v1_adresstyp_post_body_0" data-tab="0"> application/json </a> </li> </ul> </header> <div class="tabbable-contents" data-tabbable-contents="undefined_body"> <div data-tab-content="0"> <h6 class="title is-6"></h6> <ul> <li> <details> <summary>Example</summary> <pre><code>{
|
|||
|
"success": true,
|
|||
|
"data": {
|
|||
|
"id": "5",
|
|||
|
"type": "herr",
|
|||
|
"bezeichnung": "Gentleman",
|
|||
|
"projekt": "1",
|
|||
|
"netto": "0",
|
|||
|
"aktiv": "1"
|
|||
|
}
|
|||
|
}
|
|||
|
</code></pre> </details> </li> </ul> </div> </div> </div> </div> </div> </div> </div> </div> <!-- end of resource block for POST /v1/adresstyp --> <!-- end of list of methods for /v1/adresstyp --> <!-- list of methods for /v1/adresstyp/{id} --> <span id="v1_adresstyp__id_" class="group-resource-group-marker" data-spy data-spy-parent="v1_adresstyp"></span> <!-- begin of resource block for GET /v1/adresstyp/{id} --> <div id="v1_adresstyp__id__get" class="group-endpoint" data-spy data-spy-parent="v1_adresstyp__id_"> <header> <h4 class="title is-4 is-anchored"> Einzelnen Adresstyp abrufen <a class="anchor" href="#v1_adresstyp__id__get">¶</a> <div class="subtitle is-6"> <strong class="method is-get">GET</strong> <span class="value">/v1/adresstyp/{id}</span> </div> </h4> <div class="content"> <p>Einzelnen Adresstyp abrufen</p> <p>Permission: <code>view_address_type</code></p> </div> </header> <div> <h5 class="title is-5">Request</h5> <div class="indent"> <h6 class="title is-6">Path Variables</h6> <table class="table is-property-list"> <tbody> <tr> <th scope="row"> id <div class="typedef-type">integer, <strong class="typedef-required">required</strong></div> </th> <td> <div class="content"> <p>Adresstyp-ID</p> </div> </td> </tr> </tbody> </table> <h6 class="title is-6">Query Parameters</h6> <table class="table is-property-list"> <tbody> <tr> <th scope="row"> include <div class="typedef-type">string, optional</div> </th> <td> <div class="content"> <p>Unter-Resourcen in Resource einbinden (Beispiel: <code>include=projekt</code>)</p> <p>Verfügbare Includes: <code>projekt</code></p> </div> </td> </tr> </tbody> </table> </div> <h5 class="title is-5">Response</h5> <div class="tabbable is-vertical" data-component="tabbable" data-tabbable-id="v1_adresstyp__id__get_response"> <header class="tabs is-boxed"> <ul class="tabbable-tabs" data-tabbable-tabs="v1_adresstyp__id__get_response"> <li> <a id="v1_adresstyp__id__get_response_0" href="#v1_adresstyp__id__get_response_0" data-tab="0"> <span class="status" data-code="200"></span> </a> </li> <li> <a id="v1_adresstyp__id__get_response_1" href="#v1_adresstyp__id__get_response_1" data-tab="1"> <span class="status" data-code="404"></span> </a> </li> </ul> </header> <div class="tabbable-contents" data-tabbable-contents="v1_adresstyp__id__get_response"> <div data-tab-content="0"> <div class="content"> <p>Request erfolgreich</p> </div> <div class="tabbable" data-component="tabbable" data-tabbable-id="undefined_body"> <header class="tabs is-boxed"> <strong class="title is-6">Body</strong> <ul class="tabbable-tabs" data-tabbable-tabs="undefined_body"> <li> <a id="v1_adresstyp__id__get_body_0" href="#v1_adresstyp__id__get_body_0" data-tab="0"> application/json </a> </li> </ul> </header> <div class="tabbable-contents" data-tabbable-contents="undefined_body"> <div data-tab-content="0"> <h6 class="title is-6"></h6> <ul> <li> <details> <summary>Example</summary> <pre><code>{
|
|||
|
"data": {
|
|||
|
"id": "1",
|
|||
|
"type": "firma",
|
|||
|
"bezeichnung": "Firma",
|
|||
|
"projekt": "0",
|
|||
|
"netto": "1",
|
|||
|
"aktiv": "1"
|
|||
|
}
|
|||
|
}
|
|||
|
</code></pre> </details> </li> </ul> </div> </div> </div> </div> <div data-tab-content="1"> <div class="content"> <p>Adresstyp wurde nicht gefunden</p> </div> <div class="tabbable" data-component="tabbable" data-tabbable-id="undefined_body"> <header class="tabs is-boxed"> <strong class="title is-6">Body</strong> <ul class="tabbable-tabs" data-tabbable-tabs="undefined_body"> <li> <a id="v1_adresstyp__id__get_body_0" href="#v1_adresstyp__id__get_body_0" data-tab="0"> application/json </a> </li> </ul> </header> <div class="tabbable-contents" data-tabbable-contents="undefined_body"> <div data-tab-content="0"> <h6 class="title is-6"></h6> <ul> <li> <details> <summary>Example</summary> <pre><code>{
|
|||
|
"error": {
|
|||
|
"code": 7452,
|
|||
|
"http_code": 404,
|
|||
|
"message": "Resource not found",
|
|||
|
"href": "http://www.example.com/api/docs.html#error-7452"
|
|||
|
}
|
|||
|
}
|
|||
|
</code></pre> </details> </li> </ul> </div> </div> </div> </div> </div> </div> </div> </div> <!-- end of resource block for GET /v1/adresstyp/{id} --> <!-- begin of resource block for PUT /v1/adresstyp/{id} --> <div id="v1_adresstyp__id__put" class="group-endpoint" data-spy data-spy-parent="v1_adresstyp__id_"> <header> <h4 class="title is-4 is-anchored"> Adresstyp bearbeiten <a class="anchor" href="#v1_adresstyp__id__put">¶</a> <div class="subtitle is-6"> <strong class="method is-put">PUT</strong> <span class="value">/v1/adresstyp/{id}</span> </div> </h4> <div class="content"> <p>Adresstyp bearbeiten</p> <p>Permission: <code>edit_address_type</code></p> </div> </header> <div> <h5 class="title is-5">Request</h5> <div class="indent"> <h6 class="title is-6">Path Variables</h6> <table class="table is-property-list"> <tbody> <tr> <th scope="row"> id <div class="typedef-type">integer, <strong class="typedef-required">required</strong></div> </th> <td> <div class="content"> <p>Adresstyp-ID</p> </div> </td> </tr> </tbody> </table> <div class="tabbable" data-component="tabbable" data-tabbable-id="undefined_body"> <header class="tabs is-boxed"> <strong class="title is-6">Body</strong> <ul class="tabbable-tabs" data-tabbable-tabs="undefined_body"> <li> <a id="v1_adresstyp__id__put_body_0" href="#v1_adresstyp__id__put_body_0" data-tab="0"> application/json </a> </li> </ul> </header> <div class="tabbable-contents" data-tabbable-contents="undefined_body"> <div data-tab-content="0"> <h6 class="title is-6"></h6> <ul> <li> <details> <summary>Example</summary> <pre><code>{
|
|||
|
"type": "herr",
|
|||
|
"bezeichnung": "Mr",
|
|||
|
"aktiv": "1",
|
|||
|
"projekt": "1"
|
|||
|
}
|
|||
|
</code></pre> </details> </li> </ul> </div> </div> </div> </div> <h5 class="title is-5">Response</h5> <div class="tabbable is-vertical" data-component="tabbable" data-tabbable-id="v1_adresstyp__id__put_response"> <header class="tabs is-boxed"> <ul class="tabbable-tabs" data-tabbable-tabs="v1_adresstyp__id__put_response"> <li> <a id="v1_adresstyp__id__put_response_0" href="#v1_adresstyp__id__put_response_0" data-tab="0"> <span class="status" data-code="200"></span> </a> </li> </ul> </header> <div class="tabbable-contents" data-tabbable-contents="v1_adresstyp__id__put_response"> <div data-tab-content="0"> <div class="content"> <p>Request erfolgreich; Aktualisierter Adresstyp wird zurückgeliefert</p> </div> <div class="tabbable" data-component="tabbable" data-tabbable-id="undefined_body"> <header class="tabs is-boxed"> <strong class="title is-6">Body</strong> <ul class="tabbable-tabs" data-tabbable-tabs="undefined_body"> <li> <a id="v1_adresstyp__id__put_body_0" href="#v1_adresstyp__id__put_body_0" data-tab="0"> application/json </a> </li> </ul> </header> <div class="tabbable-contents" data-tabbable-contents="undefined_body"> <div data-tab-content="0"> <h6 class="title is-6"></h6> <ul> <li> <details> <summary>Example</summary> <pre><code>{
|
|||
|
"success": true,
|
|||
|
"data": {
|
|||
|
"id": "5",
|
|||
|
"type": "herr",
|
|||
|
"bezeichnung": "Mr",
|
|||
|
"projekt": "1",
|
|||
|
"netto": "0",
|
|||
|
"aktiv": "1"
|
|||
|
}
|
|||
|
}
|
|||
|
</code></pre> </details> </li> </ul> </div> </div> </div> </div> </div> </div> </div> </div> <!-- end of resource block for PUT /v1/adresstyp/{id} --> <!-- end of list of methods for /v1/adresstyp/{id} --> </div> <div id="v1_artikel" class="group" data-spy data-spy-parent="__all_resources"> <header class="group-header"> <div class="group-title"> <h3 class="title is-3">/v1/artikel</h3> </div> <div class="content"> <p>Artikel abrufen</p> </div> </header> <!-- list of methods for /v1/artikel --> <!-- begin of resource block for GET /v1/artikel --> <div id="v1_artikel_get" class="group-endpoint" data-spy data-spy-parent="v1_artikel"> <header> <h4 class="title is-4 is-anchored"> Artikelliste abrufen <a class="anchor" href="#v1_artikel_get">¶</a> <div class="subtitle is-6"> <strong class="method is-get">GET</strong> <span class="value">/v1/artikel</span> </div> </h4> <div class="content"> <p>Artikelliste abrufen</p> <p>Permission: <code>list_articles</code></p> </div> </header> <div> <h5 class="title is-5">Request</h5> <div class="indent"> <h6 class="title is-6">Query Parameters</h6> <table class="table is-property-list"> <tbody> <tr> <th scope="row"> typ <div class="typedef-type">string, optional</div> </th> <td> <div class="content"> <p>Artikel eines bestimmten Typs suchen (genaue Übereinstimmung)</p> <p>Mögliche Werte: <code>produkt</code>, <code>gebuehr</code></p> </div> </td> </tr> <tr> <th scope="row"> nummer <div class="typedef-type">string, optional</div> </th> <td> <div class="content"> <p>Suche nach Artikeln mit bestimmter Artikelnummer (ungefähre Übereinstimmung)</p> </div> </td> </tr> <tr> <th scope="row"> nummer_equals <div class="typedef-type">string, optional</div> </th> <td> <div class="content"> <p>Suche nach Artikeln mit bestimmter Artikelnummer (genaue Übereinstimmung)</p> </div> </td> </tr> <tr> <th scope="row"> nummer_startswith <div class="typedef-type">string, optional</div> </th> <td> <div class="content"> <p>Suche nach Artikeln mit bestimmter Artikelnummer (Übereinstimmung am Anfang)</p> </div> </td> </tr> <tr> <th scope="row"> nummer_endswith <div class="typedef-type">string, optional</div> </th> <td> <div class="content"> <p>Suche nach Artikeln mit bestimmter Artikelnummer (Übereinstimmung am Ende)</p> </div> </td> </tr> <tr> <th scope="row"> name_de <div class="typedef-type">string, optional</div> </th> <td> <div class="content"> <p>Suche nach Artikeln mit bestimmtem deutschem Namen (ungefähre Übereinstimmung)</p> </div> </td> </tr> <tr> <th scope="row"> name_de_equals <div class="typedef-type">string, optional</div> </th> <td> <div class="content"> <p>Suche nach Artikeln mit bestimmtem deutschem Namen (genaue Übereinstimmung)</p> </div> </td> </tr> <tr> <th scope="row"> name_de_startswith <div class="typedef-type">string, optional</div> </th> <td> <div class="content"> <p>Suche nach Artikeln mit bestimmtem deutschem Namen (Übereinstimmung am Anfang)</p> </div> </td> </tr> <tr> <th scope="row"> name_de_endswith <div class="typedef-type">string, optional</div> </th> <td> <div class="content"> <p>Suche nach Artikeln mit bestimmtem deutschem Namen (Übereinstimmung am Ende)</p> </div> </td> </tr> <tr> <th scope="row"> name_en <div class="typedef-type">string, optional</div> </th> <td> <div class="content"> <p>Suche nach Artikeln mit bestimmtem englischem Namen (ungefähre Übereinstimmung)</p> </div> </td> </tr> <tr> <th scope="row"> name_en_equals <div class="typedef-type">string, optional</div> </th> <td> <div class="content"> <p>Suche nach Artikeln mit bestimmtem englischem Namen (genaue Übereinstimmung)</p> </div> </td> </tr> <tr> <th scope="row"> name_en_startswith <div class="typedef-type">string, optional</div> </th> <td> <div class="content"> <p>Suche nach Artikeln mit bestimmtem englischem Namen (Übereinstimmung am Anfang)</p> </div> </td> </tr> <tr> <th scope="row"> name_en_endswith <div class="typedef-type">string, optional</div> </th> <td> <div class="content"> <p>Suche nach Artikeln mit bestimmtem englischem Namen (Übereinstimmung am Ende)</p> </div> </td> </tr> <tr> <th sc
|
|||
|
"lagernd": 12,
|
|||
|
"reserviert": 0,
|
|||
|
"offene_auftraege": 33,
|
|||
|
"offene_bestellungen": 1,
|
|||
|
"berechneter_bestand": -21,
|
|||
|
"verkaufbar": 0
|
|||
|
}
|
|||
|
</code></pre> <p><strong>Beispiel – Kein Lagerartikel</strong></p> <pre><code class="lang-json">"lagerbestand": []
|
|||
|
</code></pre> <p><strong>Erklärung</strong></p> <ul> <li><strong>Lagernd</strong>: Lagernde Menge über alle Lager, außer Sperrlager;</li> <li><strong>Reserviert</strong>: Reservierte Menge</li> <li><strong>Offene Aufträge</strong>: Menge aus offenen Aufträgen; Es werden nur Aufträge mit dem Status FREIGEGEBEN berücksichtigt; Aufträge mit Status ANGELEGT werden nicht berücksichtigt;</li> <li><strong>Offene Bestellungen</strong>: Es werden nur Bestellungen mit dem Status FREIGEGEBEN berücksichtigt; Bestellungen mit Status ANGELEGT werden nicht berücksichtigt;</li> <li><strong>Berechneter Bestand</strong>: <em>Lagernder Bestand</em> minus <em>Offene Aufträge</em></li> <li><strong>Verkaufbar</strong>: Wie <em>Berechneter Bestand</em>; wird nur nicht kleiner als <code>0</code></li> </ul> </div> </td> </tr> <tr> <th scope="row"> page <div class="typedef-type">integer , default: <code>1</code>, maximum: 1000, optional</div> </th> <td> <div class="content"> <p>Seitenzahl</p> </div> </td> </tr> <tr> <th scope="row"> items <div class="typedef-type">integer , default: <code>20</code>, maximum: 1000, optional</div> </th> <td> <div class="content"> <p>Anzahl der Ergebnisse pro Seite</p> </div> </td> </tr> </tbody> </table> </div> <h5 class="title is-5">Response</h5> <div class="tabbable is-vertical" data-component="tabbable" data-tabbable-id="v1_artikel_get_response"> <header class="tabs is-boxed"> <ul class="tabbable-tabs" data-tabbable-tabs="v1_artikel_get_response"> <li> <a id="v1_artikel_get_response_0" href="#v1_artikel_get_response_0" data-tab="0"> <span class="status" data-code="200"></span> </a> </li> </ul> </header> <div class="tabbable-contents" data-tabbable-contents="v1_artikel_get_response"> <div data-tab-content="0"> <div class="tabbable" data-component="tabbable" data-tabbable-id="undefined_body"> <header class="tabs is-boxed"> <strong class="title is-6">Body</strong> <ul class="tabbable-tabs" data-tabbable-tabs="undefined_body"> <li> <a id="v1_artikel_get_body_0" href="#v1_artikel_get_body_0" data-tab="0"> application/json </a> </li> </ul> </header> <div class="tabbable-contents" data-tabbable-contents="undefined_body"> <div data-tab-content="0"> <h6 class="title is-6"></h6> <ul> <li> <details> <summary>Example</summary> <pre><code>{
|
|||
|
"data": [
|
|||
|
{
|
|||
|
"id": 1,
|
|||
|
"typ": "produkt",
|
|||
|
"nummer": "700001",
|
|||
|
"checksum": "",
|
|||
|
"projekt": 1,
|
|||
|
"inaktiv": "",
|
|||
|
"ausverkauft": 0,
|
|||
|
"warengruppe": "",
|
|||
|
"name_de": "Schraube M10x20",
|
|||
|
"name_en": "",
|
|||
|
"kurztext_de": "",
|
|||
|
"kurztext_en": "",
|
|||
|
"beschreibung_de": "",
|
|||
|
"beschreibung_en": "",
|
|||
|
"uebersicht_de": "",
|
|||
|
"uebersicht_en": "",
|
|||
|
"links_de": "",
|
|||
|
"links_en": "",
|
|||
|
"startseite_de": "",
|
|||
|
"startseite_en": "",
|
|||
|
"standardbild": "",
|
|||
|
"herstellerlink": "",
|
|||
|
"hersteller": "",
|
|||
|
"teilbar": "",
|
|||
|
"...": "Ausgabe gekürzt"
|
|||
|
},
|
|||
|
{
|
|||
|
"id": 2,
|
|||
|
"...": "Ausgabe gekürzt"
|
|||
|
}
|
|||
|
]
|
|||
|
}
|
|||
|
</code></pre> </details> </li> </ul> </div> </div> </div> </div> </div> </div> </div> </div> <!-- end of resource block for GET /v1/artikel --> <!-- end of list of methods for /v1/artikel --> <!-- list of methods for /v1/artikel/{id} --> <span id="v1_artikel__id_" class="group-resource-group-marker" data-spy data-spy-parent="v1_artikel"></span> <!-- begin of resource block for GET /v1/artikel/{id} --> <div id="v1_artikel__id__get" class="group-endpoint" data-spy data-spy-parent="v1_artikel__id_"> <header> <h4 class="title is-4 is-anchored"> Einzelnen Artikel abrufen <a class="anchor" href="#v1_artikel__id__get">¶</a> <div class="subtitle is-6"> <strong class="method is-get">GET</strong> <span class="value">/v1/artikel/{id}</span> </div> </h4> <div class="content"> <p>Einzelnen Artikel abrufen</p> <p>Permission: <code>view_article</code></p> </div> </header> <div> <h5 class="title is-5">Request</h5> <div class="indent"> <h6 class="title is-6">Path Variables</h6> <table class="table is-property-list"> <tbody> <tr> <th scope="row"> id <div class="typedef-type">integer, <strong class="typedef-required">required</strong></div> </th> <td> <div class="content"> <p>Artikel-ID</p> </div> </td> </tr> </tbody> </table> </div> <h5 class="title is-5">Response</h5> <div class="tabbable is-vertical" data-component="tabbable" data-tabbable-id="v1_artikel__id__get_response"> <header class="tabs is-boxed"> <ul class="tabbable-tabs" data-tabbable-tabs="v1_artikel__id__get_response"> <li> <a id="v1_artikel__id__get_response_0" href="#v1_artikel__id__get_response_0" data-tab="0"> <span class="status" data-code="200"></span> </a> </li> <li> <a id="v1_artikel__id__get_response_1" href="#v1_artikel__id__get_response_1" data-tab="1"> <span class="status" data-code="404"></span> </a> </li> </ul> </header> <div class="tabbable-contents" data-tabbable-contents="v1_artikel__id__get_response"> <div data-tab-content="0"> <div class="content"> <p>Request erfolgreich</p> </div> <div class="tabbable" data-component="tabbable" data-tabbable-id="undefined_body"> <header class="tabs is-boxed"> <strong class="title is-6">Body</strong> <ul class="tabbable-tabs" data-tabbable-tabs="undefined_body"> <li> <a id="v1_artikel__id__get_body_0" href="#v1_artikel__id__get_body_0" data-tab="0"> application/json </a> </li> </ul> </header> <div class="tabbable-contents" data-tabbable-contents="undefined_body"> <div data-tab-content="0"> <h6 class="title is-6"></h6> <ul> <li> <details> <summary>Example</summary> <pre><code>{
|
|||
|
"data": {
|
|||
|
"id": 1,
|
|||
|
"typ": "produkt",
|
|||
|
"nummer": "700001",
|
|||
|
"checksum": "",
|
|||
|
"projekt": 1,
|
|||
|
"inaktiv": "",
|
|||
|
"ausverkauft": 0,
|
|||
|
"warengruppe": "",
|
|||
|
"name_de": "Schraube M10x20",
|
|||
|
"name_en": "",
|
|||
|
"kurztext_de": "",
|
|||
|
"kurztext_en": "",
|
|||
|
"beschreibung_de": "",
|
|||
|
"beschreibung_en": "",
|
|||
|
"uebersicht_de": "",
|
|||
|
"uebersicht_en": "",
|
|||
|
"links_de": "",
|
|||
|
"links_en": "",
|
|||
|
"startseite_de": "",
|
|||
|
"startseite_en": "",
|
|||
|
"standardbild": "",
|
|||
|
"herstellerlink": "",
|
|||
|
"hersteller": "",
|
|||
|
"teilbar": "",
|
|||
|
"nteile": "",
|
|||
|
"...": "Ausgabe gekürzt"
|
|||
|
}
|
|||
|
}
|
|||
|
</code></pre> </details> </li> </ul> </div> </div> </div> </div> <div data-tab-content="1"> <div class="content"> <p>Artikel wurde nicht gefunden</p> </div> <div class="tabbable" data-component="tabbable" data-tabbable-id="undefined_body"> <header class="tabs is-boxed"> <strong class="title is-6">Body</strong> <ul class="tabbable-tabs" data-tabbable-tabs="undefined_body"> <li> <a id="v1_artikel__id__get_body_0" href="#v1_artikel__id__get_body_0" data-tab="0"> application/json </a> </li> </ul> </header> <div class="tabbable-contents" data-tabbable-contents="undefined_body"> <div data-tab-content="0"> <h6 class="title is-6"></h6> <ul> <li> <details> <summary>Example</summary> <pre><code>{
|
|||
|
"error": {
|
|||
|
"code": 7452,
|
|||
|
"http_code": 404,
|
|||
|
"message": "Resource not found",
|
|||
|
"href": "http://www.example.com/api/docs.html#error-7452"
|
|||
|
}
|
|||
|
}
|
|||
|
</code></pre> </details> </li> </ul> </div> </div> </div> </div> </div> </div> </div> </div> <!-- end of resource block for GET /v1/artikel/{id} --> <!-- end of list of methods for /v1/artikel/{id} --> </div> <div id="v1_artikelkategorien" class="group" data-spy data-spy-parent="__all_resources"> <header class="group-header"> <div class="group-title"> <h3 class="title is-3">/v1/artikelkategorien</h3> </div> <div class="content"> <p>Artikelkategorien anlegen, bearbeiten und abrufen</p> </div> </header> <!-- list of methods for /v1/artikelkategorien --> <!-- begin of resource block for GET /v1/artikelkategorien --> <div id="v1_artikelkategorien_get" class="group-endpoint" data-spy data-spy-parent="v1_artikelkategorien"> <header> <h4 class="title is-4 is-anchored"> Artikelkategorien abrufen <a class="anchor" href="#v1_artikelkategorien_get">¶</a> <div class="subtitle is-6"> <strong class="method is-get">GET</strong> <span class="value">/v1/artikelkategorien</span> </div> </h4> <div class="content"> <p>Artikelkategorien abrufen</p> <p>Permission: <code>list_article_categories</code></p> </div> </header> <div> <h5 class="title is-5">Request</h5> <div class="indent"> <h6 class="title is-6">Query Parameters</h6> <table class="table is-property-list"> <tbody> <tr> <th scope="row"> parent <div class="typedef-type">integer, optional</div> </th> <td> <div class="content"> <p>Artikelkategorien mit Parent-ID filtern (genaue Übereinstimmung)</p> </div> </td> </tr> <tr> <th scope="row"> projekt <div class="typedef-type">integer, optional</div> </th> <td> <div class="content"> <p>Artikelkategorien mit Projekt filtern (genaue Übereinstimmung)</p> </div> </td> </tr> <tr> <th scope="row"> bezeichnung <div class="typedef-type">string, optional</div> </th> <td> <div class="content"> <p>Artikelkategorie mit bestimmter Bezeichnung suchen (ungefähre Übereinstimmung)</p> </div> </td> </tr> <tr> <th scope="row"> bezeichnung_exakt <div class="typedef-type">string, optional</div> </th> <td> <div class="content"> <p>Artikelkategorie mit bestimmter Bezeichnung suchen (genaue Übereinstimmung)</p> </div> </td> </tr> <tr> <th scope="row"> id_ext <div class="typedef-type">integer, optional</div> </th> <td> <div class="content"> <p>Artikelkategorie mit externer ID filtern (genaue Übereinstimmung)</p> </div> </td> </tr> <tr> <th scope="row"> sort <div class="typedef-type">string, optional</div> </th> <td> <div class="content"> <p>Sortierung (Beispiel: <code>sort=parent,-bezeichnung</code>)</p> <p>Verfügbare Felder: <code>bezeichnung</code>, <code>parent</code>, <code>projekt</code></p> </div> </td> </tr> <tr> <th scope="row"> page <div class="typedef-type">integer , default: <code>1</code>, maximum: 1000, optional</div> </th> <td> <div class="content"> <p>Seitenzahl</p> </div> </td> </tr> <tr> <th scope="row"> items <div class="typedef-type">integer , default: <code>20</code>, maximum: 1000, optional</div> </th> <td> <div class="content"> <p>Anzahl der Ergebnisse pro Seite</p> </div> </td> </tr> </tbody> </table> </div> </div> </div> <!-- end of resource block for GET /v1/artikelkategorien --> <!-- begin of resource block for POST /v1/artikelkategorien --> <div id="v1_artikelkategorien_post" class="group-endpoint" data-spy data-spy-parent="v1_artikelkategorien"> <header> <h4 class="title is-4 is-anchored"> Artikelkategorie anlegen <a class="anchor" href="#v1_artikelkategorien_post">¶</a> <div class="subtitle is-6"> <strong class="method is-post">POST</strong> <span class="value">/v1/artikelkategorien</span> </div> </h4> <div class="content"> <p>Artikelkategorie anlegen</p> <p>Permission: <code>create_article_category</code></p> </div> </header> <div> <h5 class="title is-5">Request</h5> <div class="indent"> <div class="tabbable" data-component="tabbable" data-tabbable-id="undefined_body"> <header class="tabs is-boxed"> <strong class="title is-6">Body</strong> <ul class="tabbable-tabs" data-tabbable-tabs="undefined_body"> <li> <a id="v1_artikelkategorien_post_body_0" href="#v1_artikelkategorien_post_body_0" data-tab="0"> application/json </a> </li>
|
|||
|
"bezeichnung": "Schaufelradbagger",
|
|||
|
"projekt": 1,
|
|||
|
"parent": 10
|
|||
|
}
|
|||
|
</code></pre> </details> </li> </ul> </div> </div> </div> </div> <h5 class="title is-5">Response</h5> <div class="tabbable is-vertical" data-component="tabbable" data-tabbable-id="v1_artikelkategorien_post_response"> <header class="tabs is-boxed"> <ul class="tabbable-tabs" data-tabbable-tabs="v1_artikelkategorien_post_response"> <li> <a id="v1_artikelkategorien_post_response_0" href="#v1_artikelkategorien_post_response_0" data-tab="0"> <span class="status" data-code="201"></span> </a> </li> </ul> </header> <div class="tabbable-contents" data-tabbable-contents="v1_artikelkategorien_post_response"> <div data-tab-content="0"> <div class="content"> <p>Request erfolgreich; Angelegte Artikelkategorie wird zurückgeliefert</p> </div> <div class="tabbable" data-component="tabbable" data-tabbable-id="undefined_body"> <header class="tabs is-boxed"> <strong class="title is-6">Body</strong> <ul class="tabbable-tabs" data-tabbable-tabs="undefined_body"> <li> <a id="v1_artikelkategorien_post_body_0" href="#v1_artikelkategorien_post_body_0" data-tab="0"> application/json </a> </li> </ul> </header> <div class="tabbable-contents" data-tabbable-contents="undefined_body"> <div data-tab-content="0"> <h6 class="title is-6"></h6> <ul> <li> <details> <summary>Example</summary> <pre><code>{
|
|||
|
"success": true,
|
|||
|
"data": {
|
|||
|
"id": 19,
|
|||
|
"bezeichnung": "Schaufelradbagger",
|
|||
|
"next_nummer": "",
|
|||
|
"projekt": 1,
|
|||
|
"geloescht": "0",
|
|||
|
"externenummer": "0",
|
|||
|
"parent": 10,
|
|||
|
"steuer_erloese_inland_normal": "",
|
|||
|
"steuer_aufwendung_inland_normal": "",
|
|||
|
"steuer_erloese_inland_ermaessigt": "",
|
|||
|
"steuer_aufwendung_inland_ermaessigt": "",
|
|||
|
"steuer_erloese_inland_steuerfrei": "",
|
|||
|
"steuer_aufwendung_inland_steuerfrei": "",
|
|||
|
"steuer_erloese_inland_innergemeinschaftlich": "",
|
|||
|
"steuer_aufwendung_inland_innergemeinschaftlich": "",
|
|||
|
"steuer_erloese_inland_eunormal": "",
|
|||
|
"steuer_erloese_inland_nichtsteuerbar": "",
|
|||
|
"steuer_erloese_inland_euermaessigt": "",
|
|||
|
"steuer_aufwendung_inland_nichtsteuerbar": "",
|
|||
|
"steuer_aufwendung_inland_eunormal": "",
|
|||
|
"steuer_aufwendung_inland_euermaessigt": "",
|
|||
|
"steuer_erloese_inland_export": "",
|
|||
|
"steuer_aufwendung_inland_import": "",
|
|||
|
"steuertext_innergemeinschaftlich": null,
|
|||
|
"steuertext_export": null,
|
|||
|
"id_ext": 0
|
|||
|
}
|
|||
|
}
|
|||
|
</code></pre> </details> </li> </ul> </div> </div> </div> </div> </div> </div> </div> </div> <!-- end of resource block for POST /v1/artikelkategorien --> <!-- end of list of methods for /v1/artikelkategorien --> <!-- list of methods for /v1/artikelkategorien/{id} --> <span id="v1_artikelkategorien__id_" class="group-resource-group-marker" data-spy data-spy-parent="v1_artikelkategorien"></span> <!-- begin of resource block for GET /v1/artikelkategorien/{id} --> <div id="v1_artikelkategorien__id__get" class="group-endpoint" data-spy data-spy-parent="v1_artikelkategorien__id_"> <header> <h4 class="title is-4 is-anchored"> Einzelne Artikelkategorie abrufen <a class="anchor" href="#v1_artikelkategorien__id__get">¶</a> <div class="subtitle is-6"> <strong class="method is-get">GET</strong> <span class="value">/v1/artikelkategorien/{id}</span> </div> </h4> <div class="content"> <p>Einzelne Artikelkategorie abrufen</p> <p>Permission: <code>view_article_category</code></p> </div> </header> <div> <h5 class="title is-5">Request</h5> <div class="indent"> <h6 class="title is-6">Path Variables</h6> <table class="table is-property-list"> <tbody> <tr> <th scope="row"> id <div class="typedef-type">integer, <strong class="typedef-required">required</strong></div> </th> <td> <div class="content"> <p>Artikelkategorie-ID</p> </div> </td> </tr> </tbody> </table> </div> <h5 class="title is-5">Response</h5> <div class="tabbable is-vertical" data-component="tabbable" data-tabbable-id="v1_artikelkategorien__id__get_response"> <header class="tabs is-boxed"> <ul class="tabbable-tabs" data-tabbable-tabs="v1_artikelkategorien__id__get_response"> <li> <a id="v1_artikelkategorien__id__get_response_0" href="#v1_artikelkategorien__id__get_response_0" data-tab="0"> <span class="status" data-code="200"></span> </a> </li> <li> <a id="v1_artikelkategorien__id__get_response_1" href="#v1_artikelkategorien__id__get_response_1" data-tab="1"> <span class="status" data-code="404"></span> </a> </li> </ul> </header> <div class="tabbable-contents" data-tabbable-contents="v1_artikelkategorien__id__get_response"> <div data-tab-content="0"> <div class="content"> <p>Request erfolgreich</p> </div> <div class="tabbable" data-component="tabbable" data-tabbable-id="undefined_body"> <header class="tabs is-boxed"> <strong class="title is-6">Body</strong> <ul class="tabbable-tabs" data-tabbable-tabs="undefined_body"> <li> <a id="v1_artikelkategorien__id__get_body_0" href="#v1_artikelkategorien__id__get_body_0" data-tab="0"> application/json </a> </li> </ul> </header> <div class="tabbable-contents" data-tabbable-contents="undefined_body"> <div data-tab-content="0"> <h6 class="title is-6"></h6> <ul> <li> <details> <summary>Example</summary> <pre><code>{
|
|||
|
"data": {
|
|||
|
"id": 1,
|
|||
|
"bezeichnung": "1000000 Sonstiges",
|
|||
|
"next_nummer": "1000000",
|
|||
|
"projekt": 0,
|
|||
|
"geloescht": "0",
|
|||
|
"externenummer": "0",
|
|||
|
"parent": 0,
|
|||
|
"...": "Ausgabe gekürzt",
|
|||
|
"id_ext": 0
|
|||
|
}
|
|||
|
}
|
|||
|
</code></pre> </details> </li> </ul> </div> </div> </div> </div> <div data-tab-content="1"> <div class="content"> <p>Artikelkategorie wurde nicht gefunden</p> </div> <div class="tabbable" data-component="tabbable" data-tabbable-id="undefined_body"> <header class="tabs is-boxed"> <strong class="title is-6">Body</strong> <ul class="tabbable-tabs" data-tabbable-tabs="undefined_body"> <li> <a id="v1_artikelkategorien__id__get_body_0" href="#v1_artikelkategorien__id__get_body_0" data-tab="0"> application/json </a> </li> </ul> </header> <div class="tabbable-contents" data-tabbable-contents="undefined_body"> <div data-tab-content="0"> <h6 class="title is-6"></h6> <ul> <li> <details> <summary>Example</summary> <pre><code>{
|
|||
|
"error": {
|
|||
|
"code": 7452,
|
|||
|
"http_code": 404,
|
|||
|
"message": "Resource not found",
|
|||
|
"href": "http://www.example.com/api/docs.html#error-7452"
|
|||
|
}
|
|||
|
}
|
|||
|
</code></pre> </details> </li> </ul> </div> </div> </div> </div> </div> </div> </div> </div> <!-- end of resource block for GET /v1/artikelkategorien/{id} --> <!-- begin of resource block for PUT /v1/artikelkategorien/{id} --> <div id="v1_artikelkategorien__id__put" class="group-endpoint" data-spy data-spy-parent="v1_artikelkategorien__id_"> <header> <h4 class="title is-4 is-anchored"> Artikelkategorie bearbeiten <a class="anchor" href="#v1_artikelkategorien__id__put">¶</a> <div class="subtitle is-6"> <strong class="method is-put">PUT</strong> <span class="value">/v1/artikelkategorien/{id}</span> </div> </h4> <div class="content"> <p>Artikelkategorie bearbeiten</p> <p>Permission: <code>edit_article_category</code></p> </div> </header> <div> <h5 class="title is-5">Request</h5> <div class="indent"> <h6 class="title is-6">Path Variables</h6> <table class="table is-property-list"> <tbody> <tr> <th scope="row"> id <div class="typedef-type">integer, <strong class="typedef-required">required</strong></div> </th> <td> <div class="content"> <p>Artikelkategorie-ID</p> </div> </td> </tr> </tbody> </table> <div class="tabbable" data-component="tabbable" data-tabbable-id="undefined_body"> <header class="tabs is-boxed"> <strong class="title is-6">Body</strong> <ul class="tabbable-tabs" data-tabbable-tabs="undefined_body"> <li> <a id="v1_artikelkategorien__id__put_body_0" href="#v1_artikelkategorien__id__put_body_0" data-tab="0"> application/json </a> </li> </ul> </header> <div class="tabbable-contents" data-tabbable-contents="undefined_body"> <div data-tab-content="0"> <h6 class="title is-6"></h6> <ul> <li> <details> <summary>Example</summary> <pre><code>{
|
|||
|
"bezeichnung": "Schwimmbagger"
|
|||
|
}
|
|||
|
</code></pre> </details> </li> </ul> </div> </div> </div> </div> <h5 class="title is-5">Response</h5> <div class="tabbable is-vertical" data-component="tabbable" data-tabbable-id="v1_artikelkategorien__id__put_response"> <header class="tabs is-boxed"> <ul class="tabbable-tabs" data-tabbable-tabs="v1_artikelkategorien__id__put_response"> <li> <a id="v1_artikelkategorien__id__put_response_0" href="#v1_artikelkategorien__id__put_response_0" data-tab="0"> <span class="status" data-code="200"></span> </a> </li> </ul> </header> <div class="tabbable-contents" data-tabbable-contents="v1_artikelkategorien__id__put_response"> <div data-tab-content="0"> <div class="content"> <p>Request erfolgreich; Aktualisierte Artikelkategorie wird zurückgeliefert</p> </div> <div class="tabbable" data-component="tabbable" data-tabbable-id="undefined_body"> <header class="tabs is-boxed"> <strong class="title is-6">Body</strong> <ul class="tabbable-tabs" data-tabbable-tabs="undefined_body"> <li> <a id="v1_artikelkategorien__id__put_body_0" href="#v1_artikelkategorien__id__put_body_0" data-tab="0"> application/json </a> </li> </ul> </header> <div class="tabbable-contents" data-tabbable-contents="undefined_body"> <div data-tab-content="0"> <h6 class="title is-6"></h6> <ul> <li> <details> <summary>Example</summary> <pre><code>{
|
|||
|
"success": true,
|
|||
|
"data": {
|
|||
|
"id": 19,
|
|||
|
"bezeichnung": "Schwimmbagger",
|
|||
|
"next_nummer": "",
|
|||
|
"projekt": 1,
|
|||
|
"geloescht": "0",
|
|||
|
"externenummer": "0",
|
|||
|
"parent": 0,
|
|||
|
"...": "Ausgabe gekürzt",
|
|||
|
"id_ext": 0
|
|||
|
}
|
|||
|
}
|
|||
|
</code></pre> </details> </li> </ul> </div> </div> </div> </div> </div> </div> </div> </div> <!-- end of resource block for PUT /v1/artikelkategorien/{id} --> <!-- end of list of methods for /v1/artikelkategorien/{id} --> </div> <div id="v1_eigenschaften" class="group" data-spy data-spy-parent="__all_resources"> <header class="group-header"> <div class="group-title"> <h3 class="title is-3">/v1/eigenschaften</h3> </div> <div class="content"> <p>Eigenschaften für Artikel abrufen, erstellen, bearbeiten und löschen</p> </div> </header> <!-- list of methods for /v1/eigenschaften --> <!-- begin of resource block for GET /v1/eigenschaften --> <div id="v1_eigenschaften_get" class="group-endpoint" data-spy data-spy-parent="v1_eigenschaften"> <header> <h4 class="title is-4 is-anchored"> Eigenschaften abrufen <a class="anchor" href="#v1_eigenschaften_get">¶</a> <div class="subtitle is-6"> <strong class="method is-get">GET</strong> <span class="value">/v1/eigenschaften</span> </div> </h4> <div class="content"> <p>Eigenschaften abrufen</p> <p>Permission: <code>list_property</code></p> </div> </header> <div> <h5 class="title is-5">Request</h5> <div class="indent"> <h6 class="title is-6">Query Parameters</h6> <table class="table is-property-list"> <tbody> <tr> <th scope="row"> artikel <div class="typedef-type">integer, optional</div> </th> <td> <div class="content"> <p>Artikel Id der die Eigenschaft zugewiesen ist (genaue Übereinstimmung) - Standardmäßig 0, da die Zuordnung zum Artikel über den Wert realisiert wird</p> </div> </td> </tr> <tr> <th scope="row"> name <div class="typedef-type">string, optional</div> </th> <td> <div class="content"> <p>Name der Eigenschaft (genaue Übereinstimmung)</p> </div> </td> </tr> <tr> <th scope="row"> typ <div class="typedef-type">string, optional</div> </th> <td> <div class="content"> <p>Typ der Eigenschaft (genaue Übereinstimmung)</p> </div> </td> </tr> <tr> <th scope="row"> projekt <div class="typedef-type">integer, optional</div> </th> <td> <div class="content"> <p>Projekt dem die Eigenschaft zugewiesen ist (genaue Übereinstimmung)</p> </div> </td> </tr> <tr> <th scope="row"> geloescht <div class="typedef-type">integer, optional</div> </th> <td> <div class="content"> <p>Markiert die Eigenschaft als gelöscht (genaue Übereinstimmung)</p> </div> </td> </tr> <tr> <th scope="row"> sort <div class="typedef-type">string, optional</div> </th> <td> <div class="content"> <p>Sortierung (Beispiel: <code>sort=artikel,-name</code>)</p> <p>Verfügbare Felder: <code>artikel</code>, <code>name</code>, <code>typ</code>, <code>projekt</code>, <code>geloescht</code></p> </div> </td> </tr> <tr> <th scope="row"> page <div class="typedef-type">integer , default: <code>1</code>, maximum: 1000, optional</div> </th> <td> <div class="content"> <p>Seitenzahl</p> </div> </td> </tr> <tr> <th scope="row"> items <div class="typedef-type">integer , default: <code>20</code>, maximum: 1000, optional</div> </th> <td> <div class="content"> <p>Anzahl der Ergebnisse pro Seite</p> </div> </td> </tr> </tbody> </table> </div> </div> </div> <!-- end of resource block for GET /v1/eigenschaften --> <!-- begin of resource block for POST /v1/eigenschaften --> <div id="v1_eigenschaften_post" class="group-endpoint" data-spy data-spy-parent="v1_eigenschaften"> <header> <h4 class="title is-4 is-anchored"> Eigenschaft anlegen <a class="anchor" href="#v1_eigenschaften_post">¶</a> <div class="subtitle is-6"> <strong class="method is-post">POST</strong> <span class="value">/v1/eigenschaften</span> </div> </h4> <div class="content"> <p>Eigenschaft anlegen</p> <p>Permission: <code>create_property</code></p> </div> </header> <div> <h5 class="title is-5">Request</h5> <div class="indent"> <div class="tabbable" data-component="tabbable" data-tabbable-id="undefined_body"> <header class="tabs is-boxed"> <strong class="title is-6">Body</strong> <ul class="tabbable-tabs" data-tabbable-tabs="undefined_body"> <li> <a id="v1_eigenschaften_post_body_0" href="#v1_eigenschaften_post_body_0" data-tab="0"> application/json </a> </li> </ul> </header> <div
|
|||
|
"name": "Farbe",
|
|||
|
"typ": "einzeilig"
|
|||
|
}
|
|||
|
</code></pre> </details> </li> </ul> </div> </div> </div> </div> <h5 class="title is-5">Response</h5> <div class="tabbable is-vertical" data-component="tabbable" data-tabbable-id="v1_eigenschaften_post_response"> <header class="tabs is-boxed"> <ul class="tabbable-tabs" data-tabbable-tabs="v1_eigenschaften_post_response"> <li> <a id="v1_eigenschaften_post_response_0" href="#v1_eigenschaften_post_response_0" data-tab="0"> <span class="status" data-code="201"></span> </a> </li> </ul> </header> <div class="tabbable-contents" data-tabbable-contents="v1_eigenschaften_post_response"> <div data-tab-content="0"> <div class="content"> <p>Request erfolgreich; Angelegte Eigenschaft wird zurückgeliefert</p> </div> <div class="tabbable" data-component="tabbable" data-tabbable-id="undefined_body"> <header class="tabs is-boxed"> <strong class="title is-6">Body</strong> <ul class="tabbable-tabs" data-tabbable-tabs="undefined_body"> <li> <a id="v1_eigenschaften_post_body_0" href="#v1_eigenschaften_post_body_0" data-tab="0"> application/json </a> </li> </ul> </header> <div class="tabbable-contents" data-tabbable-contents="undefined_body"> <div data-tab-content="0"> <h6 class="title is-6"></h6> <ul> <li> <details> <summary>Example</summary> <pre><code>{
|
|||
|
"success": true,
|
|||
|
"data": {
|
|||
|
"id": 19,
|
|||
|
"artikel": 0,
|
|||
|
"name": "Farbe",
|
|||
|
"typ": "einzeilig",
|
|||
|
"projekt": 0,
|
|||
|
"geloescht": "0"
|
|||
|
}
|
|||
|
}
|
|||
|
</code></pre> </details> </li> </ul> </div> </div> </div> </div> </div> </div> </div> </div> <!-- end of resource block for POST /v1/eigenschaften --> <!-- end of list of methods for /v1/eigenschaften --> <!-- list of methods for /v1/eigenschaften/{id} --> <span id="v1_eigenschaften__id_" class="group-resource-group-marker" data-spy data-spy-parent="v1_eigenschaften"></span> <!-- begin of resource block for GET /v1/eigenschaften/{id} --> <div id="v1_eigenschaften__id__get" class="group-endpoint" data-spy data-spy-parent="v1_eigenschaften__id_"> <header> <h4 class="title is-4 is-anchored"> Einzelne Eigenschaft abrufen <a class="anchor" href="#v1_eigenschaften__id__get">¶</a> <div class="subtitle is-6"> <strong class="method is-get">GET</strong> <span class="value">/v1/eigenschaften/{id}</span> </div> </h4> <div class="content"> <p>Einzelne Eigenschaft abrufen</p> <p>Permission: <code>view_property</code></p> </div> </header> <div> <h5 class="title is-5">Request</h5> <div class="indent"> <h6 class="title is-6">Path Variables</h6> <table class="table is-property-list"> <tbody> <tr> <th scope="row"> id <div class="typedef-type">integer, <strong class="typedef-required">required</strong></div> </th> <td> <div class="content"> <p>Eigenschaft-ID</p> </div> </td> </tr> </tbody> </table> </div> <h5 class="title is-5">Response</h5> <div class="tabbable is-vertical" data-component="tabbable" data-tabbable-id="v1_eigenschaften__id__get_response"> <header class="tabs is-boxed"> <ul class="tabbable-tabs" data-tabbable-tabs="v1_eigenschaften__id__get_response"> <li> <a id="v1_eigenschaften__id__get_response_0" href="#v1_eigenschaften__id__get_response_0" data-tab="0"> <span class="status" data-code="200"></span> </a> </li> <li> <a id="v1_eigenschaften__id__get_response_1" href="#v1_eigenschaften__id__get_response_1" data-tab="1"> <span class="status" data-code="404"></span> </a> </li> </ul> </header> <div class="tabbable-contents" data-tabbable-contents="v1_eigenschaften__id__get_response"> <div data-tab-content="0"> <div class="content"> <p>Request erfolgreich</p> </div> <div class="tabbable" data-component="tabbable" data-tabbable-id="undefined_body"> <header class="tabs is-boxed"> <strong class="title is-6">Body</strong> <ul class="tabbable-tabs" data-tabbable-tabs="undefined_body"> <li> <a id="v1_eigenschaften__id__get_body_0" href="#v1_eigenschaften__id__get_body_0" data-tab="0"> application/json </a> </li> </ul> </header> <div class="tabbable-contents" data-tabbable-contents="undefined_body"> <div data-tab-content="0"> <h6 class="title is-6"></h6> <ul> <li> <details> <summary>Example</summary> <pre><code>{
|
|||
|
"data": {
|
|||
|
"id": 19,
|
|||
|
"artikel": 0,
|
|||
|
"name": "Farbe",
|
|||
|
"typ": "einzeilig",
|
|||
|
"projekt": 0,
|
|||
|
"geloescht": "0"
|
|||
|
}
|
|||
|
}
|
|||
|
</code></pre> </details> </li> </ul> </div> </div> </div> </div> <div data-tab-content="1"> <div class="content"> <p>Eigenschaft wurde nicht gefunden</p> </div> <div class="tabbable" data-component="tabbable" data-tabbable-id="undefined_body"> <header class="tabs is-boxed"> <strong class="title is-6">Body</strong> <ul class="tabbable-tabs" data-tabbable-tabs="undefined_body"> <li> <a id="v1_eigenschaften__id__get_body_0" href="#v1_eigenschaften__id__get_body_0" data-tab="0"> application/json </a> </li> </ul> </header> <div class="tabbable-contents" data-tabbable-contents="undefined_body"> <div data-tab-content="0"> <h6 class="title is-6"></h6> <ul> <li> <details> <summary>Example</summary> <pre><code>{
|
|||
|
"error": {
|
|||
|
"code": 7452,
|
|||
|
"http_code": 404,
|
|||
|
"message": "Resource not found",
|
|||
|
"href": "http://www.example.com/api/docs.html#error-7452"
|
|||
|
}
|
|||
|
}
|
|||
|
</code></pre> </details> </li> </ul> </div> </div> </div> </div> </div> </div> </div> </div> <!-- end of resource block for GET /v1/eigenschaften/{id} --> <!-- begin of resource block for PUT /v1/eigenschaften/{id} --> <div id="v1_eigenschaften__id__put" class="group-endpoint" data-spy data-spy-parent="v1_eigenschaften__id_"> <header> <h4 class="title is-4 is-anchored"> Eigenschaft bearbeiten <a class="anchor" href="#v1_eigenschaften__id__put">¶</a> <div class="subtitle is-6"> <strong class="method is-put">PUT</strong> <span class="value">/v1/eigenschaften/{id}</span> </div> </h4> <div class="content"> <p>Eigenschaft bearbeiten</p> <p>Permission: <code>edit_property</code></p> </div> </header> <div> <h5 class="title is-5">Request</h5> <div class="indent"> <h6 class="title is-6">Path Variables</h6> <table class="table is-property-list"> <tbody> <tr> <th scope="row"> id <div class="typedef-type">integer, <strong class="typedef-required">required</strong></div> </th> <td> <div class="content"> <p>Eigenschaft-ID</p> </div> </td> </tr> </tbody> </table> <div class="tabbable" data-component="tabbable" data-tabbable-id="undefined_body"> <header class="tabs is-boxed"> <strong class="title is-6">Body</strong> <ul class="tabbable-tabs" data-tabbable-tabs="undefined_body"> <li> <a id="v1_eigenschaften__id__put_body_0" href="#v1_eigenschaften__id__put_body_0" data-tab="0"> application/json </a> </li> </ul> </header> <div class="tabbable-contents" data-tabbable-contents="undefined_body"> <div data-tab-content="0"> <h6 class="title is-6"></h6> <ul> <li> <details> <summary>Example</summary> <pre><code>{
|
|||
|
"name": "Material"
|
|||
|
}
|
|||
|
</code></pre> </details> </li> </ul> </div> </div> </div> </div> <h5 class="title is-5">Response</h5> <div class="tabbable is-vertical" data-component="tabbable" data-tabbable-id="v1_eigenschaften__id__put_response"> <header class="tabs is-boxed"> <ul class="tabbable-tabs" data-tabbable-tabs="v1_eigenschaften__id__put_response"> <li> <a id="v1_eigenschaften__id__put_response_0" href="#v1_eigenschaften__id__put_response_0" data-tab="0"> <span class="status" data-code="200"></span> </a> </li> </ul> </header> <div class="tabbable-contents" data-tabbable-contents="v1_eigenschaften__id__put_response"> <div data-tab-content="0"> <div class="content"> <p>Request erfolgreich; Aktualisierte Eigenschaft wird zurückgeliefert</p> </div> <div class="tabbable" data-component="tabbable" data-tabbable-id="undefined_body"> <header class="tabs is-boxed"> <strong class="title is-6">Body</strong> <ul class="tabbable-tabs" data-tabbable-tabs="undefined_body"> <li> <a id="v1_eigenschaften__id__put_body_0" href="#v1_eigenschaften__id__put_body_0" data-tab="0"> application/json </a> </li> </ul> </header> <div class="tabbable-contents" data-tabbable-contents="undefined_body"> <div data-tab-content="0"> <h6 class="title is-6"></h6> <ul> <li> <details> <summary>Example</summary> <pre><code>{
|
|||
|
"success": true,
|
|||
|
"data": {
|
|||
|
"id": 19,
|
|||
|
"artikel": 0,
|
|||
|
"name": "Material",
|
|||
|
"typ": "einzeilig",
|
|||
|
"projekt": 0,
|
|||
|
"geloescht": "0"
|
|||
|
}
|
|||
|
}
|
|||
|
</code></pre> </details> </li> </ul> </div> </div> </div> </div> </div> </div> </div> </div> <!-- end of resource block for PUT /v1/eigenschaften/{id} --> <!-- begin of resource block for DELETE /v1/eigenschaften/{id} --> <div id="v1_eigenschaften__id__delete" class="group-endpoint" data-spy data-spy-parent="v1_eigenschaften__id_"> <header> <h4 class="title is-4 is-anchored"> Einzelne Eigenschaft löschen <a class="anchor" href="#v1_eigenschaften__id__delete">¶</a> <div class="subtitle is-6"> <strong class="method is-delete">DELETE</strong> <span class="value">/v1/eigenschaften/{id}</span> </div> </h4> <div class="content"> <p>Einzelne Eigenschaft löschen - Eigenschaften sollten nur dann gelöscht werden wenn auch keine Werte mehr für sie vorliegen</p> <p>Permission: <code>delete_property</code></p> </div> </header> <div> <h5 class="title is-5">Request</h5> <div class="indent"> <h6 class="title is-6">Path Variables</h6> <table class="table is-property-list"> <tbody> <tr> <th scope="row"> id <div class="typedef-type">integer, <strong class="typedef-required">required</strong></div> </th> <td> <div class="content"> <p>Eigenschaft-ID</p> </div> </td> </tr> </tbody> </table> </div> <h5 class="title is-5">Response</h5> <div class="tabbable is-vertical" data-component="tabbable" data-tabbable-id="v1_eigenschaften__id__delete_response"> <header class="tabs is-boxed"> <ul class="tabbable-tabs" data-tabbable-tabs="v1_eigenschaften__id__delete_response"> <li> <a id="v1_eigenschaften__id__delete_response_0" href="#v1_eigenschaften__id__delete_response_0" data-tab="0"> <span class="status" data-code="200"></span> </a> </li> <li> <a id="v1_eigenschaften__id__delete_response_1" href="#v1_eigenschaften__id__delete_response_1" data-tab="1"> <span class="status" data-code="404"></span> </a> </li> </ul> </header> <div class="tabbable-contents" data-tabbable-contents="v1_eigenschaften__id__delete_response"> <div data-tab-content="0"> <div class="content"> <p>Request erfolgreich</p> </div> <div class="tabbable" data-component="tabbable" data-tabbable-id="undefined_body"> <header class="tabs is-boxed"> <strong class="title is-6">Body</strong> <ul class="tabbable-tabs" data-tabbable-tabs="undefined_body"> <li> <a id="v1_eigenschaften__id__delete_body_0" href="#v1_eigenschaften__id__delete_body_0" data-tab="0"> application/json </a> </li> </ul> </header> <div class="tabbable-contents" data-tabbable-contents="undefined_body"> <div data-tab-content="0"> <h6 class="title is-6"></h6> <ul> <li> <details> <summary>Example</summary> <pre><code>{
|
|||
|
"success": true,
|
|||
|
"data": {
|
|||
|
"id": 19
|
|||
|
}
|
|||
|
}
|
|||
|
</code></pre> </details> </li> </ul> </div> </div> </div> </div> <div data-tab-content="1"> <div class="content"> <p>Eigenschaft wurde nicht gefunden</p> </div> <div class="tabbable" data-component="tabbable" data-tabbable-id="undefined_body"> <header class="tabs is-boxed"> <strong class="title is-6">Body</strong> <ul class="tabbable-tabs" data-tabbable-tabs="undefined_body"> <li> <a id="v1_eigenschaften__id__delete_body_0" href="#v1_eigenschaften__id__delete_body_0" data-tab="0"> application/json </a> </li> </ul> </header> <div class="tabbable-contents" data-tabbable-contents="undefined_body"> <div data-tab-content="0"> <h6 class="title is-6"></h6> <ul> <li> <details> <summary>Example</summary> <pre><code>{
|
|||
|
"error": {
|
|||
|
"code": 7452,
|
|||
|
"http_code": 404,
|
|||
|
"message": "Resource not found",
|
|||
|
"href": "http://localhost/xentral/20.1/www/api/docs.html#error-7452"
|
|||
|
}
|
|||
|
}
|
|||
|
</code></pre> </details> </li> </ul> </div> </div> </div> </div> </div> </div> </div> </div> <!-- end of resource block for DELETE /v1/eigenschaften/{id} --> <!-- end of list of methods for /v1/eigenschaften/{id} --> </div> <div id="v1_eigenschaftenwerte" class="group" data-spy data-spy-parent="__all_resources"> <header class="group-header"> <div class="group-title"> <h3 class="title is-3">/v1/eigenschaftenwerte</h3> </div> <div class="content"> <p>Eigenschaftenwerte für Artikel abrufen, erstellen, bearbeiten und löschen</p> </div> </header> <!-- list of methods for /v1/eigenschaftenwerte --> <!-- begin of resource block for GET /v1/eigenschaftenwerte --> <div id="v1_eigenschaftenwerte_get" class="group-endpoint" data-spy data-spy-parent="v1_eigenschaftenwerte"> <header> <h4 class="title is-4 is-anchored"> Eigenschaftenwerte abrufen <a class="anchor" href="#v1_eigenschaftenwerte_get">¶</a> <div class="subtitle is-6"> <strong class="method is-get">GET</strong> <span class="value">/v1/eigenschaftenwerte</span> </div> </h4> <div class="content"> <p>Eigenschaften abrufen</p> <p>Permission: <code>list_property_value</code></p> </div> </header> <div> <h5 class="title is-5">Request</h5> <div class="indent"> <h6 class="title is-6">Query Parameters</h6> <table class="table is-property-list"> <tbody> <tr> <th scope="row"> artikel <div class="typedef-type">integer, optional</div> </th> <td> <div class="content"> <p>Artikel Id der die Eigenschaft zugewiesen ist (genaue Übereinstimmung)</p> </div> </td> </tr> <tr> <th scope="row"> artikeleigenschaften <div class="typedef-type">string, optional</div> </th> <td> <div class="content"> <p>Id der Eigenschaft (genaue Übereinstimmung)</p> </div> </td> </tr> <tr> <th scope="row"> wert <div class="typedef-type">string, optional</div> </th> <td> <div class="content"> <p>Wert der Eigenschaft (genaue Übereinstimmung)</p> </div> </td> </tr> <tr> <th scope="row"> sort <div class="typedef-type">string, optional</div> </th> <td> <div class="content"> <p>Sortierung (Beispiel: <code>sort=artikel,-wert</code>)</p> <p>Verfügbare Felder: <code>artikel</code>, <code>wert</code></p> </div> </td> </tr> <tr> <th scope="row"> page <div class="typedef-type">integer , default: <code>1</code>, maximum: 1000, optional</div> </th> <td> <div class="content"> <p>Seitenzahl</p> </div> </td> </tr> <tr> <th scope="row"> items <div class="typedef-type">integer , default: <code>20</code>, maximum: 1000, optional</div> </th> <td> <div class="content"> <p>Anzahl der Ergebnisse pro Seite</p> </div> </td> </tr> </tbody> </table> </div> </div> </div> <!-- end of resource block for GET /v1/eigenschaftenwerte --> <!-- begin of resource block for POST /v1/eigenschaftenwerte --> <div id="v1_eigenschaftenwerte_post" class="group-endpoint" data-spy data-spy-parent="v1_eigenschaftenwerte"> <header> <h4 class="title is-4 is-anchored"> Eigenschaftwert anlegen <a class="anchor" href="#v1_eigenschaftenwerte_post">¶</a> <div class="subtitle is-6"> <strong class="method is-post">POST</strong> <span class="value">/v1/eigenschaftenwerte</span> </div> </h4> <div class="content"> <p>Eigenschaftenwert anlegen</p> <p>Permission: <code>create_property_value</code></p> </div> </header> <div> <h5 class="title is-5">Request</h5> <div class="indent"> <div class="tabbable" data-component="tabbable" data-tabbable-id="undefined_body"> <header class="tabs is-boxed"> <strong class="title is-6">Body</strong> <ul class="tabbable-tabs" data-tabbable-tabs="undefined_body"> <li> <a id="v1_eigenschaftenwerte_post_body_0" href="#v1_eigenschaftenwerte_post_body_0" data-tab="0"> application/json </a> </li> </ul> </header> <div class="tabbable-contents" data-tabbable-contents="undefined_body"> <div data-tab-content="0"> <h6 class="title is-6">Properties (object)</h6> <table class="table is-property-list"> <tbody> <tr> <th scope="row"> artikel <div class="typedef-type">integer, <strong class="typedef-required">required</strong></div> </th> <td> <div class="content"> <p>Artikel Id der der Eigenschaftenwert zugewiesen werden soll</p> </div> </td> </tr> <tr>
|
|||
|
"artikel": 1,
|
|||
|
"artikeleigenschaften": 19,
|
|||
|
"wert": "Gelb"
|
|||
|
}
|
|||
|
</code></pre> </details> </li> </ul> </div> </div> </div> </div> <h5 class="title is-5">Response</h5> <div class="tabbable is-vertical" data-component="tabbable" data-tabbable-id="v1_eigenschaftenwerte_post_response"> <header class="tabs is-boxed"> <ul class="tabbable-tabs" data-tabbable-tabs="v1_eigenschaftenwerte_post_response"> <li> <a id="v1_eigenschaftenwerte_post_response_0" href="#v1_eigenschaftenwerte_post_response_0" data-tab="0"> <span class="status" data-code="201"></span> </a> </li> </ul> </header> <div class="tabbable-contents" data-tabbable-contents="v1_eigenschaftenwerte_post_response"> <div data-tab-content="0"> <div class="content"> <p>Request erfolgreich; Angelegter Eigenschaftenwert wird zurückgeliefert</p> </div> <div class="tabbable" data-component="tabbable" data-tabbable-id="undefined_body"> <header class="tabs is-boxed"> <strong class="title is-6">Body</strong> <ul class="tabbable-tabs" data-tabbable-tabs="undefined_body"> <li> <a id="v1_eigenschaftenwerte_post_body_0" href="#v1_eigenschaftenwerte_post_body_0" data-tab="0"> application/json </a> </li> </ul> </header> <div class="tabbable-contents" data-tabbable-contents="undefined_body"> <div data-tab-content="0"> <h6 class="title is-6"></h6> <ul> <li> <details> <summary>Example</summary> <pre><code>{
|
|||
|
"success": true,
|
|||
|
"data": {
|
|||
|
"id": 203,
|
|||
|
"artikel": 1,
|
|||
|
"artikeleigenschaften": 19,
|
|||
|
"wert": "Gelb"
|
|||
|
}
|
|||
|
}
|
|||
|
</code></pre> </details> </li> </ul> </div> </div> </div> </div> </div> </div> </div> </div> <!-- end of resource block for POST /v1/eigenschaftenwerte --> <!-- end of list of methods for /v1/eigenschaftenwerte --> <!-- list of methods for /v1/eigenschaftenwerte/{id} --> <span id="v1_eigenschaftenwerte__id_" class="group-resource-group-marker" data-spy data-spy-parent="v1_eigenschaftenwerte"></span> <!-- begin of resource block for GET /v1/eigenschaftenwerte/{id} --> <div id="v1_eigenschaftenwerte__id__get" class="group-endpoint" data-spy data-spy-parent="v1_eigenschaftenwerte__id_"> <header> <h4 class="title is-4 is-anchored"> Einzelnen Eigenschaftenwert abrufen <a class="anchor" href="#v1_eigenschaftenwerte__id__get">¶</a> <div class="subtitle is-6"> <strong class="method is-get">GET</strong> <span class="value">/v1/eigenschaftenwerte/{id}</span> </div> </h4> <div class="content"> <p>Einzelnen Eigenschaftenwert abrufen</p> <p>Permission: <code>view_property_value</code></p> </div> </header> <div> <h5 class="title is-5">Request</h5> <div class="indent"> <h6 class="title is-6">Path Variables</h6> <table class="table is-property-list"> <tbody> <tr> <th scope="row"> id <div class="typedef-type">integer, <strong class="typedef-required">required</strong></div> </th> <td> <div class="content"> <p>Eigenschaftenwert-ID</p> </div> </td> </tr> </tbody> </table> </div> <h5 class="title is-5">Response</h5> <div class="tabbable is-vertical" data-component="tabbable" data-tabbable-id="v1_eigenschaftenwerte__id__get_response"> <header class="tabs is-boxed"> <ul class="tabbable-tabs" data-tabbable-tabs="v1_eigenschaftenwerte__id__get_response"> <li> <a id="v1_eigenschaftenwerte__id__get_response_0" href="#v1_eigenschaftenwerte__id__get_response_0" data-tab="0"> <span class="status" data-code="200"></span> </a> </li> <li> <a id="v1_eigenschaftenwerte__id__get_response_1" href="#v1_eigenschaftenwerte__id__get_response_1" data-tab="1"> <span class="status" data-code="404"></span> </a> </li> </ul> </header> <div class="tabbable-contents" data-tabbable-contents="v1_eigenschaftenwerte__id__get_response"> <div data-tab-content="0"> <div class="content"> <p>Request erfolgreich</p> </div> <div class="tabbable" data-component="tabbable" data-tabbable-id="undefined_body"> <header class="tabs is-boxed"> <strong class="title is-6">Body</strong> <ul class="tabbable-tabs" data-tabbable-tabs="undefined_body"> <li> <a id="v1_eigenschaftenwerte__id__get_body_0" href="#v1_eigenschaftenwerte__id__get_body_0" data-tab="0"> application/json </a> </li> </ul> </header> <div class="tabbable-contents" data-tabbable-contents="undefined_body"> <div data-tab-content="0"> <h6 class="title is-6"></h6> <ul> <li> <details> <summary>Example</summary> <pre><code>{
|
|||
|
"data": {
|
|||
|
"id": 203,
|
|||
|
"artikel": 1,
|
|||
|
"artikeleigenschaften": 19,
|
|||
|
"wert": "Gelb"
|
|||
|
}
|
|||
|
}
|
|||
|
</code></pre> </details> </li> </ul> </div> </div> </div> </div> <div data-tab-content="1"> <div class="content"> <p>Eigenschaftenwert wurde nicht gefunden</p> </div> <div class="tabbable" data-component="tabbable" data-tabbable-id="undefined_body"> <header class="tabs is-boxed"> <strong class="title is-6">Body</strong> <ul class="tabbable-tabs" data-tabbable-tabs="undefined_body"> <li> <a id="v1_eigenschaftenwerte__id__get_body_0" href="#v1_eigenschaftenwerte__id__get_body_0" data-tab="0"> application/json </a> </li> </ul> </header> <div class="tabbable-contents" data-tabbable-contents="undefined_body"> <div data-tab-content="0"> <h6 class="title is-6"></h6> <ul> <li> <details> <summary>Example</summary> <pre><code>{
|
|||
|
"error": {
|
|||
|
"code": 7452,
|
|||
|
"http_code": 404,
|
|||
|
"message": "Resource not found",
|
|||
|
"href": "http://www.example.com/api/docs.html#error-7452"
|
|||
|
}
|
|||
|
}
|
|||
|
</code></pre> </details> </li> </ul> </div> </div> </div> </div> </div> </div> </div> </div> <!-- end of resource block for GET /v1/eigenschaftenwerte/{id} --> <!-- begin of resource block for PUT /v1/eigenschaftenwerte/{id} --> <div id="v1_eigenschaftenwerte__id__put" class="group-endpoint" data-spy data-spy-parent="v1_eigenschaftenwerte__id_"> <header> <h4 class="title is-4 is-anchored"> Eigenschaftenwert bearbeiten <a class="anchor" href="#v1_eigenschaftenwerte__id__put">¶</a> <div class="subtitle is-6"> <strong class="method is-put">PUT</strong> <span class="value">/v1/eigenschaftenwerte/{id}</span> </div> </h4> <div class="content"> <p>Eigenschaftenwert bearbeiten</p> <p>Permission: <code>edit_property_value</code></p> </div> </header> <div> <h5 class="title is-5">Request</h5> <div class="indent"> <h6 class="title is-6">Path Variables</h6> <table class="table is-property-list"> <tbody> <tr> <th scope="row"> id <div class="typedef-type">integer, <strong class="typedef-required">required</strong></div> </th> <td> <div class="content"> <p>Eigenschaftenwert-ID</p> </div> </td> </tr> </tbody> </table> <div class="tabbable" data-component="tabbable" data-tabbable-id="undefined_body"> <header class="tabs is-boxed"> <strong class="title is-6">Body</strong> <ul class="tabbable-tabs" data-tabbable-tabs="undefined_body"> <li> <a id="v1_eigenschaftenwerte__id__put_body_0" href="#v1_eigenschaftenwerte__id__put_body_0" data-tab="0"> application/json </a> </li> </ul> </header> <div class="tabbable-contents" data-tabbable-contents="undefined_body"> <div data-tab-content="0"> <h6 class="title is-6"></h6> <ul> <li> <details> <summary>Example</summary> <pre><code>{
|
|||
|
"wert": "Holz"
|
|||
|
}
|
|||
|
</code></pre> </details> </li> </ul> </div> </div> </div> </div> <h5 class="title is-5">Response</h5> <div class="tabbable is-vertical" data-component="tabbable" data-tabbable-id="v1_eigenschaftenwerte__id__put_response"> <header class="tabs is-boxed"> <ul class="tabbable-tabs" data-tabbable-tabs="v1_eigenschaftenwerte__id__put_response"> <li> <a id="v1_eigenschaftenwerte__id__put_response_0" href="#v1_eigenschaftenwerte__id__put_response_0" data-tab="0"> <span class="status" data-code="200"></span> </a> </li> </ul> </header> <div class="tabbable-contents" data-tabbable-contents="v1_eigenschaftenwerte__id__put_response"> <div data-tab-content="0"> <div class="content"> <p>Request erfolgreich; Aktualisierter Eigenschaftenwert wird zurückgeliefert</p> </div> <div class="tabbable" data-component="tabbable" data-tabbable-id="undefined_body"> <header class="tabs is-boxed"> <strong class="title is-6">Body</strong> <ul class="tabbable-tabs" data-tabbable-tabs="undefined_body"> <li> <a id="v1_eigenschaftenwerte__id__put_body_0" href="#v1_eigenschaftenwerte__id__put_body_0" data-tab="0"> application/json </a> </li> </ul> </header> <div class="tabbable-contents" data-tabbable-contents="undefined_body"> <div data-tab-content="0"> <h6 class="title is-6"></h6> <ul> <li> <details> <summary>Example</summary> <pre><code>{
|
|||
|
"success": true,
|
|||
|
"data": {
|
|||
|
"id": 203,
|
|||
|
"artikel": 1,
|
|||
|
"artikeleigenschaften": 19,
|
|||
|
"wert": "Holz"
|
|||
|
}
|
|||
|
}
|
|||
|
</code></pre> </details> </li> </ul> </div> </div> </div> </div> </div> </div> </div> </div> <!-- end of resource block for PUT /v1/eigenschaftenwerte/{id} --> <!-- begin of resource block for DELETE /v1/eigenschaftenwerte/{id} --> <div id="v1_eigenschaftenwerte__id__delete" class="group-endpoint" data-spy data-spy-parent="v1_eigenschaftenwerte__id_"> <header> <h4 class="title is-4 is-anchored"> Einzelnen Eigenschaftenwert löschen <a class="anchor" href="#v1_eigenschaftenwerte__id__delete">¶</a> <div class="subtitle is-6"> <strong class="method is-delete">DELETE</strong> <span class="value">/v1/eigenschaftenwerte/{id}</span> </div> </h4> <div class="content"> <p>Einzelnen Eigenschaftenwert löschen</p> <p>Permission: <code>delete_property_value</code></p> </div> </header> <div> <h5 class="title is-5">Request</h5> <div class="indent"> <h6 class="title is-6">Path Variables</h6> <table class="table is-property-list"> <tbody> <tr> <th scope="row"> id <div class="typedef-type">integer, <strong class="typedef-required">required</strong></div> </th> <td> <div class="content"> <p>Eigenschaftenwert-ID</p> </div> </td> </tr> </tbody> </table> </div> <h5 class="title is-5">Response</h5> <div class="tabbable is-vertical" data-component="tabbable" data-tabbable-id="v1_eigenschaftenwerte__id__delete_response"> <header class="tabs is-boxed"> <ul class="tabbable-tabs" data-tabbable-tabs="v1_eigenschaftenwerte__id__delete_response"> <li> <a id="v1_eigenschaftenwerte__id__delete_response_0" href="#v1_eigenschaftenwerte__id__delete_response_0" data-tab="0"> <span class="status" data-code="200"></span> </a> </li> <li> <a id="v1_eigenschaftenwerte__id__delete_response_1" href="#v1_eigenschaftenwerte__id__delete_response_1" data-tab="1"> <span class="status" data-code="404"></span> </a> </li> </ul> </header> <div class="tabbable-contents" data-tabbable-contents="v1_eigenschaftenwerte__id__delete_response"> <div data-tab-content="0"> <div class="content"> <p>Request erfolgreich</p> </div> <div class="tabbable" data-component="tabbable" data-tabbable-id="undefined_body"> <header class="tabs is-boxed"> <strong class="title is-6">Body</strong> <ul class="tabbable-tabs" data-tabbable-tabs="undefined_body"> <li> <a id="v1_eigenschaftenwerte__id__delete_body_0" href="#v1_eigenschaftenwerte__id__delete_body_0" data-tab="0"> application/json </a> </li> </ul> </header> <div class="tabbable-contents" data-tabbable-contents="undefined_body"> <div data-tab-content="0"> <h6 class="title is-6"></h6> <ul> <li> <details> <summary>Example</summary> <pre><code>{
|
|||
|
"success": true,
|
|||
|
"data": {
|
|||
|
"id": 203
|
|||
|
}
|
|||
|
}
|
|||
|
</code></pre> </details> </li> </ul> </div> </div> </div> </div> <div data-tab-content="1"> <div class="content"> <p>Eigenschaftenwert wurde nicht gefunden</p> </div> <div class="tabbable" data-component="tabbable" data-tabbable-id="undefined_body"> <header class="tabs is-boxed"> <strong class="title is-6">Body</strong> <ul class="tabbable-tabs" data-tabbable-tabs="undefined_body"> <li> <a id="v1_eigenschaftenwerte__id__delete_body_0" href="#v1_eigenschaftenwerte__id__delete_body_0" data-tab="0"> application/json </a> </li> </ul> </header> <div class="tabbable-contents" data-tabbable-contents="undefined_body"> <div data-tab-content="0"> <h6 class="title is-6"></h6> <ul> <li> <details> <summary>Example</summary> <pre><code>{
|
|||
|
"error": {
|
|||
|
"code": 7452,
|
|||
|
"http_code": 404,
|
|||
|
"message": "Resource not found",
|
|||
|
"href": "http://localhost/xentral/20.1/www/api/docs.html#error-7452"
|
|||
|
}
|
|||
|
}
|
|||
|
</code></pre> </details> </li> </ul> </div> </div> </div> </div> </div> </div> </div> </div> <!-- end of resource block for DELETE /v1/eigenschaftenwerte/{id} --> <!-- end of list of methods for /v1/eigenschaftenwerte/{id} --> </div> <div id="v1_belege_angebote" class="group" data-spy data-spy-parent="__all_resources"> <header class="group-header"> <div class="group-title"> <h3 class="title is-3">/v1/belege/angebote</h3> </div> <div class="content"> <p>Angebote abrufen</p> </div> </header> <!-- list of methods for /v1/belege/angebote --> <!-- begin of resource block for GET /v1/belege/angebote --> <div id="v1_belege_angebote_get" class="group-endpoint" data-spy data-spy-parent="v1_belege_angebote"> <header> <h4 class="title is-4 is-anchored"> Angebotsliste abrufen <a class="anchor" href="#v1_belege_angebote_get">¶</a> <div class="subtitle is-6"> <strong class="method is-get">GET</strong> <span class="value">/v1/belege/angebote</span> </div> </h4> <div class="content"> <p>Angebotsliste abrufen und Angebote suchen</p> <p>Permission: <code>list_quotes</code></p> </div> </header> <div> <h5 class="title is-5">Request</h5> <div class="indent"> <h6 class="title is-6">Query Parameters</h6> <table class="table is-property-list"> <tbody> <tr> <th scope="row"> status <div class="typedef-type">string, optional</div> </th> <td> <div class="content"> <p>Suche nach Angebotsstatus (genaue Übereinstimmung)</p> <p>Mögliche Werte: <code>angelegt</code>, <code>abgelehnt</code>, <code>beauftragt</code>, <code>bestellt</code>, <code>freigegeben</code>, <code>versendet</code>, <code>storniert</code></p> </div> </td> </tr> <tr> <th scope="row"> belegnr <div class="typedef-type">string, optional</div> </th> <td> <div class="content"> <p>Suche nach Belegnummer (ungefähre Übereinstimmung)</p> </div> </td> </tr> <tr> <th scope="row"> belegnr_equals <div class="typedef-type">string, optional</div> </th> <td> <div class="content"> <p>Suche nach Belegnummer (genaue Übereinstimmung)</p> </div> </td> </tr> <tr> <th scope="row"> belegnr_startswith <div class="typedef-type">string, optional</div> </th> <td> <div class="content"> <p>Suche nach Belegnummer (Übereinstimmung am Anfang)</p> </div> </td> </tr> <tr> <th scope="row"> belegnr_endswith <div class="typedef-type">string, optional</div> </th> <td> <div class="content"> <p>Suche nach Belegnummer (Übereinstimmung am Ende)</p> </div> </td> </tr> <tr> <th scope="row"> kundennummer <div class="typedef-type">string, optional</div> </th> <td> <div class="content"> <p>Suche nach Kundennummer (ungefähre Übereinstimmung)</p> </div> </td> </tr> <tr> <th scope="row"> kundennummer_equals <div class="typedef-type">string, optional</div> </th> <td> <div class="content"> <p>Suche nach Kundennummer (genaue Übereinstimmung)</p> </div> </td> </tr> <tr> <th scope="row"> kundennummer_startswith <div class="typedef-type">string, optional</div> </th> <td> <div class="content"> <p>Suche nach Kundennummer (Übereinstimmung am Anfang)</p> </div> </td> </tr> <tr> <th scope="row"> kundennummer_endswith <div class="typedef-type">string, optional</div> </th> <td> <div class="content"> <p>Suche nach Kundennummer (Übereinstimmung am Ende)</p> </div> </td> </tr> <tr> <th scope="row"> datum <div class="typedef-type">string, optional</div> </th> <td> <div class="content"> <p>Suche nach bestimmtem Belegdatum (genaue Übereinstimmung)</p> </div> </td> </tr> <tr> <th scope="row"> datum_gt <div class="typedef-type">string, optional</div> </th> <td> <div class="content"> <p>Suche nach bestimmtem Belegdatum (Datum größer Suchwert)</p> </div> </td> </tr> <tr> <th scope="row"> datum_gte <div class="typedef-type">string, optional</div> </th> <td> <div class="content"> <p>Suche nach bestimmtem Belegdatum (Datum größer gleich Suchwert)</p> </div> </td> </tr> <tr> <th scope="row"> datum_lt <div class="typedef-type">string, optional</div> </th> <td> <div class="content"> <p>Suche nach bestimmtem Belegdatum (Datum kleiner Suchwert)</p> </div> </td> </tr> <tr> <th scope="row"> datum_lte <div class="typedef-type">string, optional</div
|
|||
|
"data": {
|
|||
|
"id": 4,
|
|||
|
"firma": 1,
|
|||
|
"projekt": "1",
|
|||
|
"status": "versendet",
|
|||
|
"belegnr": "100003",
|
|||
|
"kundennummer": "10000",
|
|||
|
"datum": "2019-06-28",
|
|||
|
"gueltigbis": "2019-04-10",
|
|||
|
"adresse": 3,
|
|||
|
"typ": "firma",
|
|||
|
"name": "Max Muster",
|
|||
|
"titel": "",
|
|||
|
"strasse": "Musterstrasse 6",
|
|||
|
"plz": "12345",
|
|||
|
"ort": "Musterdorf",
|
|||
|
"land": "DE",
|
|||
|
"...": "Ausgabe gekürzt"
|
|||
|
}
|
|||
|
}
|
|||
|
</code></pre> </details> </li> </ul> </div> </div> </div> </div> <div data-tab-content="1"> <div class="content"> <p>Angebot wurde nicht gefunden</p> </div> <div class="tabbable" data-component="tabbable" data-tabbable-id="undefined_body"> <header class="tabs is-boxed"> <strong class="title is-6">Body</strong> <ul class="tabbable-tabs" data-tabbable-tabs="undefined_body"> <li> <a id="v1_belege_angebote__id__get_body_0" href="#v1_belege_angebote__id__get_body_0" data-tab="0"> application/json </a> </li> </ul> </header> <div class="tabbable-contents" data-tabbable-contents="undefined_body"> <div data-tab-content="0"> <h6 class="title is-6"></h6> <ul> <li> <details> <summary>Example</summary> <pre><code>{
|
|||
|
"error": {
|
|||
|
"code": 7452,
|
|||
|
"http_code": 404,
|
|||
|
"message": "Resource not found",
|
|||
|
"href": "http://www.example.com/api/docs.html#error-7452"
|
|||
|
}
|
|||
|
}
|
|||
|
</code></pre> </details> </li> </ul> </div> </div> </div> </div> </div> </div> </div> </div> <!-- end of resource block for GET /v1/belege/angebote/{id} --> <!-- end of list of methods for /v1/belege/angebote/{id} --> </div> <div id="v1_belege_auftraege" class="group" data-spy data-spy-parent="__all_resources"> <header class="group-header"> <div class="group-title"> <h3 class="title is-3">/v1/belege/auftraege</h3> </div> <div class="content"> <p>Aufträge abrufen</p> </div> </header> <!-- list of methods for /v1/belege/auftraege --> <!-- begin of resource block for GET /v1/belege/auftraege --> <div id="v1_belege_auftraege_get" class="group-endpoint" data-spy data-spy-parent="v1_belege_auftraege"> <header> <h4 class="title is-4 is-anchored"> Auftragsliste abrufen <a class="anchor" href="#v1_belege_auftraege_get">¶</a> <div class="subtitle is-6"> <strong class="method is-get">GET</strong> <span class="value">/v1/belege/auftraege</span> </div> </h4> <div class="content"> <p>Auftragsliste abrufen und Aufträge suchen</p> <p>Permission: <code>list_orders</code></p> </div> </header> <div> <h5 class="title is-5">Request</h5> <div class="indent"> <h6 class="title is-6">Query Parameters</h6> <table class="table is-property-list"> <tbody> <tr> <th scope="row"> status <div class="typedef-type">string, optional</div> </th> <td> <div class="content"> <p>Suche nach Auftragssstatus (genaue Übereinstimmung)</p> <p>Mögliche Werte: <code>angelegt</code>, <code>bestellt</code>, <code>freigegeben</code>, <code>versendet</code>, <code>abgeschlossen</code>, <code>storniert</code>,</p> </div> </td> </tr> <tr> <th scope="row"> belegnr <div class="typedef-type">string, optional</div> </th> <td> <div class="content"> <p>Suche nach Belegnummer (ungefähre Übereinstimmung)</p> </div> </td> </tr> <tr> <th scope="row"> belegnr_equals <div class="typedef-type">string, optional</div> </th> <td> <div class="content"> <p>Suche nach Belegnummer (genaue Übereinstimmung)</p> </div> </td> </tr> <tr> <th scope="row"> belegnr_startswith <div class="typedef-type">string, optional</div> </th> <td> <div class="content"> <p>Suche nach Belegnummer (Übereinstimmung am Anfang)</p> </div> </td> </tr> <tr> <th scope="row"> belegnr_endswith <div class="typedef-type">string, optional</div> </th> <td> <div class="content"> <p>Suche nach Belegnummer (Übereinstimmung am Ende)</p> </div> </td> </tr> <tr> <th scope="row"> kundennummer <div class="typedef-type">string, optional</div> </th> <td> <div class="content"> <p>Suche nach Kundennummer (ungefähre Übereinstimmung)</p> </div> </td> </tr> <tr> <th scope="row"> kundennummer_equals <div class="typedef-type">string, optional</div> </th> <td> <div class="content"> <p>Suche nach Kundennummer (genaue Übereinstimmung)</p> </div> </td> </tr> <tr> <th scope="row"> kundennummer_startswith <div class="typedef-type">string, optional</div> </th> <td> <div class="content"> <p>Suche nach Kundennummer (Übereinstimmung am Anfang)</p> </div> </td> </tr> <tr> <th scope="row"> kundennummer_endswith <div class="typedef-type">string, optional</div> </th> <td> <div class="content"> <p>Suche nach Kundennummer (Übereinstimmung am Ende)</p> </div> </td> </tr> <tr> <th scope="row"> datum <div class="typedef-type">string, optional</div> </th> <td> <div class="content"> <p>Suche nach bestimmtem Belegdatum (genaue Übereinstimmung)</p> </div> </td> </tr> <tr> <th scope="row"> datum_gt <div class="typedef-type">string, optional</div> </th> <td> <div class="content"> <p>Suche nach bestimmtem Belegdatum (Datum größer Suchwert)</p> </div> </td> </tr> <tr> <th scope="row"> datum_gte <div class="typedef-type">string, optional</div> </th> <td> <div class="content"> <p>Suche nach bestimmtem Belegdatum (Datum größer gleich Suchwert)</p> </div> </td> </tr> <tr> <th scope="row"> datum_lt <div class="typedef-type">string, optional</div> </th> <td> <div class="content"> <p>Suche nach bestimmtem Belegdatum (Datum kleiner Suchwert)</p> </div> </td> </tr> <tr> <th scope="row"> datum_lte <div class="typedef-type">string, optional</div> </th> <td> <div
|
|||
|
"data": {
|
|||
|
"id": 4,
|
|||
|
"firma": 1,
|
|||
|
"projekt": "1",
|
|||
|
"status": "freigegeben",
|
|||
|
"belegnr": "200003",
|
|||
|
"kundennummer": "10002",
|
|||
|
"ihrebestellnummer": null,
|
|||
|
"datum": "2019-02-26",
|
|||
|
"adresse": 5,
|
|||
|
"typ": "firma",
|
|||
|
"name": "Hans Huber",
|
|||
|
"titel": "",
|
|||
|
"strasse": "Musterstrasse 6",
|
|||
|
"plz": "12345",
|
|||
|
"ort": "Musterstadt",
|
|||
|
"land": "DE",
|
|||
|
"...": "Ausgabe gekürzt"
|
|||
|
}
|
|||
|
}
|
|||
|
</code></pre> </details> </li> </ul> </div> </div> </div> </div> <div data-tab-content="1"> <div class="content"> <p>Auftrag wurde nicht gefunden</p> </div> <div class="tabbable" data-component="tabbable" data-tabbable-id="undefined_body"> <header class="tabs is-boxed"> <strong class="title is-6">Body</strong> <ul class="tabbable-tabs" data-tabbable-tabs="undefined_body"> <li> <a id="v1_belege_auftraege__id__get_body_0" href="#v1_belege_auftraege__id__get_body_0" data-tab="0"> application/json </a> </li> </ul> </header> <div class="tabbable-contents" data-tabbable-contents="undefined_body"> <div data-tab-content="0"> <h6 class="title is-6"></h6> <ul> <li> <details> <summary>Example</summary> <pre><code>{
|
|||
|
"error": {
|
|||
|
"code": 7452,
|
|||
|
"http_code": 404,
|
|||
|
"message": "Resource not found",
|
|||
|
"href": "http://www.example.com/api/docs.html#error-7452"
|
|||
|
}
|
|||
|
}
|
|||
|
</code></pre> </details> </li> </ul> </div> </div> </div> </div> </div> </div> </div> </div> <!-- end of resource block for GET /v1/belege/auftraege/{id} --> <!-- end of list of methods for /v1/belege/auftraege/{id} --> </div> <div id="v1_belege_lieferscheine" class="group" data-spy data-spy-parent="__all_resources"> <header class="group-header"> <div class="group-title"> <h3 class="title is-3">/v1/belege/lieferscheine</h3> </div> <div class="content"> <p>Lieferscheine abrufen</p> </div> </header> <!-- list of methods for /v1/belege/lieferscheine --> <!-- begin of resource block for GET /v1/belege/lieferscheine --> <div id="v1_belege_lieferscheine_get" class="group-endpoint" data-spy data-spy-parent="v1_belege_lieferscheine"> <header> <h4 class="title is-4 is-anchored"> Lieferscheinliste abrufen <a class="anchor" href="#v1_belege_lieferscheine_get">¶</a> <div class="subtitle is-6"> <strong class="method is-get">GET</strong> <span class="value">/v1/belege/lieferscheine</span> </div> </h4> <div class="content"> <p>Lieferscheinliste abrufen und Lieferscheine suchen</p> <p>Permission: <code>list_delivery_notes</code></p> </div> </header> <div> <h5 class="title is-5">Request</h5> <div class="indent"> <h6 class="title is-6">Query Parameters</h6> <table class="table is-property-list"> <tbody> <tr> <th scope="row"> status <div class="typedef-type">string, optional</div> </th> <td> <div class="content"> <p>Suche nach Lieferschein-Status (genaue Übereinstimmung)</p> <p>Mögliche Werte: <code>angelegt</code>, <code>freigegeben</code>, <code>abgeschlossen</code>, <code>versendet</code>, <code>storniert</code></p> </div> </td> </tr> <tr> <th scope="row"> belegnr <div class="typedef-type">string, optional</div> </th> <td> <div class="content"> <p>Suche nach Belegnummer (ungefähre Übereinstimmung)</p> </div> </td> </tr> <tr> <th scope="row"> belegnr_equals <div class="typedef-type">string, optional</div> </th> <td> <div class="content"> <p>Suche nach Belegnummer (genaue Übereinstimmung)</p> </div> </td> </tr> <tr> <th scope="row"> belegnr_startswith <div class="typedef-type">string, optional</div> </th> <td> <div class="content"> <p>Suche nach Belegnummer (Übereinstimmung am Anfang)</p> </div> </td> </tr> <tr> <th scope="row"> belegnr_endswith <div class="typedef-type">string, optional</div> </th> <td> <div class="content"> <p>Suche nach Belegnummer (Übereinstimmung am Ende)</p> </div> </td> </tr> <tr> <th scope="row"> internet <div class="typedef-type">string, optional</div> </th> <td> <div class="content"> <p>Suche nach Internetnummer (ungefähre Übereinstimmung)</p> </div> </td> </tr> <tr> <th scope="row"> internet_equals <div class="typedef-type">string, optional</div> </th> <td> <div class="content"> <p>Suche nach Internetnummer (genaue Übereinstimmung)</p> </div> </td> </tr> <tr> <th scope="row"> internet_startswith <div class="typedef-type">string, optional</div> </th> <td> <div class="content"> <p>Suche nach Internetnummer (Übereinstimmung am Anfang)</p> </div> </td> </tr> <tr> <th scope="row"> internet_endswith <div class="typedef-type">string, optional</div> </th> <td> <div class="content"> <p>Suche nach Internetnummer (Übereinstimmung am Ende)</p> </div> </td> </tr> <tr> <th scope="row"> kundennummer <div class="typedef-type">string, optional</div> </th> <td> <div class="content"> <p>Suche nach Kundennummer (ungefähre Übereinstimmung)</p> </div> </td> </tr> <tr> <th scope="row"> kundennummer_equals <div class="typedef-type">string, optional</div> </th> <td> <div class="content"> <p>Suche nach Kundennummer (genaue Übereinstimmung)</p> </div> </td> </tr> <tr> <th scope="row"> kundennummer_startswith <div class="typedef-type">string, optional</div> </th> <td> <div class="content"> <p>Suche nach Kundennummer (Übereinstimmung am Anfang)</p> </div> </td> </tr> <tr> <th scope="row"> kundennummer_endswith <div class="typedef-type">string, optional</div> </th> <td> <div class="content"> <p>Suche nach Kundennummer (Übereinstimmung am Ende)</p> </div> </td> </tr> <tr> <th scope="row"> datum <div class="typedef-type">st
|
|||
|
"data": {
|
|||
|
"id": 4,
|
|||
|
"firma": 1,
|
|||
|
"projekt": "1",
|
|||
|
"status": "freigegeben",
|
|||
|
"lieferscheinart": "",
|
|||
|
"belegnr": "300003",
|
|||
|
"kundennummer": "10001",
|
|||
|
"ihrebestellnummer": "",
|
|||
|
"datum": "2019-06-12",
|
|||
|
"adresse": 4,
|
|||
|
"typ": "frau",
|
|||
|
"name": "Eva Müller",
|
|||
|
"strasse": "Musterweg 12a",
|
|||
|
"plz": "12345",
|
|||
|
"ort": "Musterdorf",
|
|||
|
"land": "DE",
|
|||
|
"...": "Ausgabe gekürzt"
|
|||
|
}
|
|||
|
}
|
|||
|
</code></pre> </details> </li> </ul> </div> </div> </div> </div> <div data-tab-content="1"> <div class="content"> <p>Lieferschein wurde nicht gefunden</p> </div> <div class="tabbable" data-component="tabbable" data-tabbable-id="undefined_body"> <header class="tabs is-boxed"> <strong class="title is-6">Body</strong> <ul class="tabbable-tabs" data-tabbable-tabs="undefined_body"> <li> <a id="v1_belege_lieferscheine__id__get_body_0" href="#v1_belege_lieferscheine__id__get_body_0" data-tab="0"> application/json </a> </li> </ul> </header> <div class="tabbable-contents" data-tabbable-contents="undefined_body"> <div data-tab-content="0"> <h6 class="title is-6"></h6> <ul> <li> <details> <summary>Example</summary> <pre><code>{
|
|||
|
"error": {
|
|||
|
"code": 7452,
|
|||
|
"http_code": 404,
|
|||
|
"message": "Resource not found",
|
|||
|
"href": "http://www.example.com/api/docs.html#error-7452"
|
|||
|
}
|
|||
|
}
|
|||
|
</code></pre> </details> </li> </ul> </div> </div> </div> </div> </div> </div> </div> </div> <!-- end of resource block for GET /v1/belege/lieferscheine/{id} --> <!-- end of list of methods for /v1/belege/lieferscheine/{id} --> </div> <div id="v1_belege_rechnungen" class="group" data-spy data-spy-parent="__all_resources"> <header class="group-header"> <div class="group-title"> <h3 class="title is-3">/v1/belege/rechnungen</h3> </div> <div class="content"> <p>Rechnungen abrufen</p> </div> </header> <!-- list of methods for /v1/belege/rechnungen --> <!-- begin of resource block for GET /v1/belege/rechnungen --> <div id="v1_belege_rechnungen_get" class="group-endpoint" data-spy data-spy-parent="v1_belege_rechnungen"> <header> <h4 class="title is-4 is-anchored"> Rechnungsliste abrufen <a class="anchor" href="#v1_belege_rechnungen_get">¶</a> <div class="subtitle is-6"> <strong class="method is-get">GET</strong> <span class="value">/v1/belege/rechnungen</span> </div> </h4> <div class="content"> <p>Rechnungsliste abrufen und Rechnungen suchen</p> <p>Permission: <code>list_invoices</code></p> </div> </header> <div> <h5 class="title is-5">Request</h5> <div class="indent"> <h6 class="title is-6">Query Parameters</h6> <table class="table is-property-list"> <tbody> <tr> <th scope="row"> status <div class="typedef-type">string, optional</div> </th> <td> <div class="content"> <p>Suche nach Rechnungs-Status (genaue Übereinstimmung)</p> <p>Mögliche Werte: <code>angelegt</code>, <code>freigegeben</code>, <code>versendet</code>, <code>storniert</code></p> </div> </td> </tr> <tr> <th scope="row"> belegnr <div class="typedef-type">string, optional</div> </th> <td> <div class="content"> <p>Suche nach Belegnummer (ungefähre Übereinstimmung)</p> </div> </td> </tr> <tr> <th scope="row"> belegnr_equals <div class="typedef-type">string, optional</div> </th> <td> <div class="content"> <p>Suche nach Belegnummer (genaue Übereinstimmung)</p> </div> </td> </tr> <tr> <th scope="row"> belegnr_startswith <div class="typedef-type">string, optional</div> </th> <td> <div class="content"> <p>Suche nach Belegnummer (Übereinstimmung am Anfang)</p> </div> </td> </tr> <tr> <th scope="row"> belegnr_endswith <div class="typedef-type">string, optional</div> </th> <td> <div class="content"> <p>Suche nach Belegnummer (Übereinstimmung am Ende)</p> </div> </td> </tr> <tr> <th scope="row"> kundennummer <div class="typedef-type">string, optional</div> </th> <td> <div class="content"> <p>Suche nach Kundennummer (ungefähre Übereinstimmung)</p> </div> </td> </tr> <tr> <th scope="row"> kundennummer_equals <div class="typedef-type">string, optional</div> </th> <td> <div class="content"> <p>Suche nach Kundennummer (genaue Übereinstimmung)</p> </div> </td> </tr> <tr> <th scope="row"> kundennummer_startswith <div class="typedef-type">string, optional</div> </th> <td> <div class="content"> <p>Suche nach Kundennummer (Übereinstimmung am Anfang)</p> </div> </td> </tr> <tr> <th scope="row"> kundennummer_endswith <div class="typedef-type">string, optional</div> </th> <td> <div class="content"> <p>Suche nach Kundennummer (Übereinstimmung am Ende)</p> </div> </td> </tr> <tr> <th scope="row"> datum <div class="typedef-type">string, optional</div> </th> <td> <div class="content"> <p>Suche nach bestimmtem Belegdatum (genaue Übereinstimmung)</p> </div> </td> </tr> <tr> <th scope="row"> datum_gt <div class="typedef-type">string, optional</div> </th> <td> <div class="content"> <p>Suche nach bestimmtem Belegdatum (Datum größer Suchwert)</p> </div> </td> </tr> <tr> <th scope="row"> datum_gte <div class="typedef-type">string, optional</div> </th> <td> <div class="content"> <p>Suche nach bestimmtem Belegdatum (Datum größer gleich Suchwert)</p> </div> </td> </tr> <tr> <th scope="row"> datum_lt <div class="typedef-type">string, optional</div> </th> <td> <div class="content"> <p>Suche nach bestimmtem Belegdatum (Datum kleiner Suchwert)</p> </div> </td> </tr> <tr> <th scope="row"> datum_lte <div class="typedef-type">string, optional</div> </th> <td> <div class="content"> <p>Suche n
|
|||
|
"data": {
|
|||
|
"id": 4,
|
|||
|
"firma": 1,
|
|||
|
"projekt": "1",
|
|||
|
"status": "versendet",
|
|||
|
"belegnr": "400002",
|
|||
|
"datum": "2019-05-21",
|
|||
|
"kundennummer": "10000",
|
|||
|
"adresse": 3,
|
|||
|
"typ": "firma",
|
|||
|
"name": "Max Muster",
|
|||
|
"strasse": "Musterstrasse 6",
|
|||
|
"plz": "12345",
|
|||
|
"ort": "Musterdorf",
|
|||
|
"land": "DE",
|
|||
|
"...": "Ausgabe gekürzt"
|
|||
|
}
|
|||
|
}
|
|||
|
</code></pre> </details> </li> </ul> </div> </div> </div> </div> <div data-tab-content="1"> <div class="content"> <p>Rechnung wurde nicht gefunden</p> </div> <div class="tabbable" data-component="tabbable" data-tabbable-id="undefined_body"> <header class="tabs is-boxed"> <strong class="title is-6">Body</strong> <ul class="tabbable-tabs" data-tabbable-tabs="undefined_body"> <li> <a id="v1_belege_rechnungen__id__get_body_0" href="#v1_belege_rechnungen__id__get_body_0" data-tab="0"> application/json </a> </li> </ul> </header> <div class="tabbable-contents" data-tabbable-contents="undefined_body"> <div data-tab-content="0"> <h6 class="title is-6"></h6> <ul> <li> <details> <summary>Example</summary> <pre><code>{
|
|||
|
"error": {
|
|||
|
"code": 7452,
|
|||
|
"http_code": 404,
|
|||
|
"message": "Resource not found",
|
|||
|
"href": "http://www.example.com/api/docs.html#error-7452"
|
|||
|
}
|
|||
|
}
|
|||
|
</code></pre> </details> </li> </ul> </div> </div> </div> </div> </div> </div> </div> </div> <!-- end of resource block for GET /v1/belege/rechnungen/{id} --> <!-- begin of resource block for DELETE /v1/belege/rechnungen/{id} --> <div id="v1_belege_rechnungen__id__delete" class="group-endpoint" data-spy data-spy-parent="v1_belege_rechnungen__id_"> <header> <h4 class="title is-4 is-anchored"> Einzelne Rechnung löschen <a class="anchor" href="#v1_belege_rechnungen__id__delete">¶</a> <div class="subtitle is-6"> <strong class="method is-delete">DELETE</strong> <span class="value">/v1/belege/rechnungen/{id}</span> </div> </h4> <div class="content"> <p>Einzelne Rechnung löschen</p> <p>Permission: <code>delete_invoice</code></p> </div> </header> <div> <h5 class="title is-5">Request</h5> <div class="indent"> <h6 class="title is-6">Path Variables</h6> <table class="table is-property-list"> <tbody> <tr> <th scope="row"> id <div class="typedef-type">integer, <strong class="typedef-required">required</strong></div> </th> <td> <div class="content"> <p>Rechnungs-ID</p> </div> </td> </tr> </tbody> </table> </div> <h5 class="title is-5">Response</h5> <div class="tabbable is-vertical" data-component="tabbable" data-tabbable-id="v1_belege_rechnungen__id__delete_response"> <header class="tabs is-boxed"> <ul class="tabbable-tabs" data-tabbable-tabs="v1_belege_rechnungen__id__delete_response"> <li> <a id="v1_belege_rechnungen__id__delete_response_0" href="#v1_belege_rechnungen__id__delete_response_0" data-tab="0"> <span class="status" data-code="200"></span> </a> </li> <li> <a id="v1_belege_rechnungen__id__delete_response_1" href="#v1_belege_rechnungen__id__delete_response_1" data-tab="1"> <span class="status" data-code="404"></span> </a> </li> </ul> </header> <div class="tabbable-contents" data-tabbable-contents="v1_belege_rechnungen__id__delete_response"> <div data-tab-content="0"> <div class="content"> <p>Request erfolgreich</p> </div> <div class="tabbable" data-component="tabbable" data-tabbable-id="undefined_body"> <header class="tabs is-boxed"> <strong class="title is-6">Body</strong> <ul class="tabbable-tabs" data-tabbable-tabs="undefined_body"> <li> <a id="v1_belege_rechnungen__id__delete_body_0" href="#v1_belege_rechnungen__id__delete_body_0" data-tab="0"> application/json </a> </li> </ul> </header> <div class="tabbable-contents" data-tabbable-contents="undefined_body"> <div data-tab-content="0"> <h6 class="title is-6"></h6> <ul> <li> <details> <summary>Example</summary> <pre><code>{
|
|||
|
"success": true,
|
|||
|
"data": {
|
|||
|
"id": 18
|
|||
|
}
|
|||
|
}
|
|||
|
</code></pre> </details> </li> </ul> </div> </div> </div> </div> <div data-tab-content="1"> <div class="content"> <p>Rechnung wurde nicht gefunden</p> </div> <div class="tabbable" data-component="tabbable" data-tabbable-id="undefined_body"> <header class="tabs is-boxed"> <strong class="title is-6">Body</strong> <ul class="tabbable-tabs" data-tabbable-tabs="undefined_body"> <li> <a id="v1_belege_rechnungen__id__delete_body_0" href="#v1_belege_rechnungen__id__delete_body_0" data-tab="0"> application/json </a> </li> </ul> </header> <div class="tabbable-contents" data-tabbable-contents="undefined_body"> <div data-tab-content="0"> <h6 class="title is-6"></h6> <ul> <li> <details> <summary>Example</summary> <pre><code>{
|
|||
|
"error": {
|
|||
|
"code": 7452,
|
|||
|
"http_code": 404,
|
|||
|
"message": "Resource not found",
|
|||
|
"href": "http://localhost/xentral/20.1/www/api/docs.html#error-7452"
|
|||
|
}
|
|||
|
}
|
|||
|
</code></pre> </details> </li> </ul> </div> </div> </div> </div> </div> </div> </div> </div> <!-- end of resource block for DELETE /v1/belege/rechnungen/{id} --> <!-- end of list of methods for /v1/belege/rechnungen/{id} --> </div> <div id="v1_belege_gutschriften" class="group" data-spy data-spy-parent="__all_resources"> <header class="group-header"> <div class="group-title"> <h3 class="title is-3">/v1/belege/gutschriften</h3> </div> <div class="content"> <p>Gutschriften/Stornorechnungen abrufen</p> </div> </header> <!-- list of methods for /v1/belege/gutschriften --> <!-- begin of resource block for GET /v1/belege/gutschriften --> <div id="v1_belege_gutschriften_get" class="group-endpoint" data-spy data-spy-parent="v1_belege_gutschriften"> <header> <h4 class="title is-4 is-anchored"> Gutschriftenliste abrufen <a class="anchor" href="#v1_belege_gutschriften_get">¶</a> <div class="subtitle is-6"> <strong class="method is-get">GET</strong> <span class="value">/v1/belege/gutschriften</span> </div> </h4> <div class="content"> <p>Gutschriftenliste abrufen und Gutschriften suchen</p> <p>Permission: <code>list_credit_memos</code></p> </div> </header> <div> <h5 class="title is-5">Request</h5> <div class="indent"> <h6 class="title is-6">Query Parameters</h6> <table class="table is-property-list"> <tbody> <tr> <th scope="row"> status <div class="typedef-type">string, optional</div> </th> <td> <div class="content"> <p>Suche nach Gutschriften-Status (genaue Übereinstimmung)</p> <p>Mögliche Werte: <code>angelegt</code>, <code>freigegeben</code>, <code>versendet</code>, <code>storniert</code></p> </div> </td> </tr> <tr> <th scope="row"> belegnr <div class="typedef-type">string, optional</div> </th> <td> <div class="content"> <p>Suche nach Belegnummer (ungefähre Übereinstimmung)</p> </div> </td> </tr> <tr> <th scope="row"> belegnr_equals <div class="typedef-type">string, optional</div> </th> <td> <div class="content"> <p>Suche nach Belegnummer (genaue Übereinstimmung)</p> </div> </td> </tr> <tr> <th scope="row"> belegnr_startswith <div class="typedef-type">string, optional</div> </th> <td> <div class="content"> <p>Suche nach Belegnummer (Übereinstimmung am Anfang)</p> </div> </td> </tr> <tr> <th scope="row"> belegnr_endswith <div class="typedef-type">string, optional</div> </th> <td> <div class="content"> <p>Suche nach Belegnummer (Übereinstimmung am Ende)</p> </div> </td> </tr> <tr> <th scope="row"> kundennummer <div class="typedef-type">string, optional</div> </th> <td> <div class="content"> <p>Suche nach Kundennummer (ungefähre Übereinstimmung)</p> </div> </td> </tr> <tr> <th scope="row"> kundennummer_equals <div class="typedef-type">string, optional</div> </th> <td> <div class="content"> <p>Suche nach Kundennummer (genaue Übereinstimmung)</p> </div> </td> </tr> <tr> <th scope="row"> kundennummer_startswith <div class="typedef-type">string, optional</div> </th> <td> <div class="content"> <p>Suche nach Kundennummer (Übereinstimmung am Anfang)</p> </div> </td> </tr> <tr> <th scope="row"> kundennummer_endswith <div class="typedef-type">string, optional</div> </th> <td> <div class="content"> <p>Suche nach Kundennummer (Übereinstimmung am Ende)</p> </div> </td> </tr> <tr> <th scope="row"> datum <div class="typedef-type">string, optional</div> </th> <td> <div class="content"> <p>Suche nach bestimmtem Belegdatum (genaue Übereinstimmung)</p> </div> </td> </tr> <tr> <th scope="row"> datum_gt <div class="typedef-type">string, optional</div> </th> <td> <div class="content"> <p>Suche nach bestimmtem Belegdatum (Datum größer Suchwert)</p> </div> </td> </tr> <tr> <th scope="row"> datum_gte <div class="typedef-type">string, optional</div> </th> <td> <div class="content"> <p>Suche nach bestimmtem Belegdatum (Datum größer gleich Suchwert)</p> </div> </td> </tr> <tr> <th scope="row"> datum_lt <div class="typedef-type">string, optional</div> </th> <td> <div class="content"> <p>Suche nach bestimmtem Belegdatum (Datum kleiner Suchwert)</p> </div> </td> </tr> <tr> <th scope="row"> datum_lte <div class="typedef-type">string, optional</d
|
|||
|
"data": {
|
|||
|
"id": 1,
|
|||
|
"firma": 1,
|
|||
|
"projekt": "1",
|
|||
|
"status": "versendet",
|
|||
|
"belegnr": "900000",
|
|||
|
"datum": "2019-08-07",
|
|||
|
"stornorechnung": 0,
|
|||
|
"kundennummer": "10001",
|
|||
|
"adresse": 4,
|
|||
|
"typ": "frau",
|
|||
|
"name": "Eva Müller",
|
|||
|
"strasse": "Musterweg 12a",
|
|||
|
"plz": "12345",
|
|||
|
"ort": "Musterdorf",
|
|||
|
"land": "DE",
|
|||
|
"...": "Ausgabe gekürzt"
|
|||
|
}
|
|||
|
}
|
|||
|
</code></pre> </details> </li> </ul> </div> </div> </div> </div> <div data-tab-content="1"> <div class="content"> <p>Gutschrift wurde nicht gefunden</p> </div> <div class="tabbable" data-component="tabbable" data-tabbable-id="undefined_body"> <header class="tabs is-boxed"> <strong class="title is-6">Body</strong> <ul class="tabbable-tabs" data-tabbable-tabs="undefined_body"> <li> <a id="v1_belege_gutschriften__id__get_body_0" href="#v1_belege_gutschriften__id__get_body_0" data-tab="0"> application/json </a> </li> </ul> </header> <div class="tabbable-contents" data-tabbable-contents="undefined_body"> <div data-tab-content="0"> <h6 class="title is-6"></h6> <ul> <li> <details> <summary>Example</summary> <pre><code>{
|
|||
|
"error": {
|
|||
|
"code": 7452,
|
|||
|
"http_code": 404,
|
|||
|
"message": "Resource not found",
|
|||
|
"href": "http://www.example.com/api/docs.html#error-7452"
|
|||
|
}
|
|||
|
}
|
|||
|
</code></pre> </details> </li> </ul> </div> </div> </div> </div> </div> </div> </div> </div> <!-- end of resource block for GET /v1/belege/gutschriften/{id} --> <!-- end of list of methods for /v1/belege/gutschriften/{id} --> </div> <div id="v1_crmdokumente" class="group" data-spy data-spy-parent="__all_resources"> <header class="group-header"> <div class="group-title"> <h3 class="title is-3">/v1/crmdokumente</h3> </div> <div class="content"> <p>CRM-Dokumente abrufen, anlegen und bearbeiten</p> </div> </header> <!-- list of methods for /v1/crmdokumente --> <!-- begin of resource block for GET /v1/crmdokumente --> <div id="v1_crmdokumente_get" class="group-endpoint" data-spy data-spy-parent="v1_crmdokumente"> <header> <h4 class="title is-4 is-anchored"> CRM-Dokumente abrufen <a class="anchor" href="#v1_crmdokumente_get">¶</a> <div class="subtitle is-6"> <strong class="method is-get">GET</strong> <span class="value">/v1/crmdokumente</span> </div> </h4> <div class="content"> <p>CRM-Dokumente abrufen und suchen</p> <p>Permission: <code>list_crm_documents</code></p> </div> </header> <div> <h5 class="title is-5">Request</h5> <div class="indent"> <h6 class="title is-6">Query Parameters</h6> <table class="table is-property-list"> <tbody> <tr> <th scope="row"> typ <div class="typedef-type">string, optional</div> </th> <td> <div class="content"> <p>Suche nach CRM-Dokumenten eines Typs (ungefähre Übereinstimmung)</p> </div> </td> </tr> <tr> <th scope="row"> typ_equals <div class="typedef-type">string, optional</div> </th> <td> <div class="content"> <p>Suche nach CRM-Dokumenten eines Typs (genaue Übereinstimmung)</p> <p>Verfügbare Typen: <code>brief</code>, <code>email</code>, <code>telefon</code>, <code>notiz</code></p> </div> </td> </tr> <tr> <th scope="row"> typ_exact <div class="typedef-type">string, optional</div> </th> <td> <div class="content"> <p>(deprecated) gleich wie typ_equals</p> </div> </td> </tr> <tr> <th scope="row"> betreff <div class="typedef-type">string, optional</div> </th> <td> <div class="content"> <p>Suche nach Betreff (ungefähre Übereinstimmung)</p> </div> </td> </tr> <tr> <th scope="row"> betreff_equals <div class="typedef-type">string, optional</div> </th> <td> <div class="content"> <p>Suche nach Betreff (genaue Übereinstimmung)</p> </div> </td> </tr> <tr> <th scope="row"> betreff_exakt <div class="typedef-type">string, optional</div> </th> <td> <div class="content"> <p>(deprecated) gleich wie betreff_equals</p> </div> </td> </tr> <tr> <th scope="row"> projekt <div class="typedef-type">integer, optional</div> </th> <td> <div class="content"> <p>Filtere nach Projekt (Projekt-ID)</p> </div> </td> </tr> <tr> <th scope="row"> adresse_from <div class="typedef-type">integer, optional</div> </th> <td> <div class="content"> <p>Filtere nach Absender (Adresse-ID)</p> </div> </td> </tr> <tr> <th scope="row"> adresse_to <div class="typedef-type">integer, optional</div> </th> <td> <div class="content"> <p>Filtere nach Empfänger (Adresse-ID)</p> </div> </td> </tr> <tr> <th scope="row"> include <div class="typedef-type">string, optional</div> </th> <td> <div class="content"> <p>Unter-Resourcen in Resource einbinden (Beispiel: <code>include=projekt</code>)</p> <p>Verfügbare Includes: <code>projekt</code>, <code>adresse_to</code>, <code>adresse_from</code></p> </div> </td> </tr> <tr> <th scope="row"> page <div class="typedef-type">integer , default: <code>1</code>, maximum: 1000, optional</div> </th> <td> <div class="content"> <p>Seitenzahl</p> </div> </td> </tr> <tr> <th scope="row"> items <div class="typedef-type">integer , default: <code>20</code>, maximum: 1000, optional</div> </th> <td> <div class="content"> <p>Anzahl der Ergebnisse pro Seite</p> </div> </td> </tr> </tbody> </table> </div> </div> </div> <!-- end of resource block for GET /v1/crmdokumente --> <!-- begin of resource block for POST /v1/crmdokumente --> <div id="v1_crmdokumente_post" class="group-endpoint" data-spy data-spy-parent="v1_crmdokumente"> <header> <h4 class="title is-4 is-anchored"> CRM-Dokument anlegen <a class="anchor" href="#v1_cr
|
|||
|
"typ": "email",
|
|||
|
"betreff": "AW: Antwort auf eine Frage",
|
|||
|
"adresse_from": 1,
|
|||
|
"adresse_to": 7,
|
|||
|
"projekt": 1
|
|||
|
}
|
|||
|
</code></pre> </details> </li> </ul> </div> </div> </div> </div> <h5 class="title is-5">Response</h5> <div class="tabbable is-vertical" data-component="tabbable" data-tabbable-id="v1_crmdokumente_post_response"> <header class="tabs is-boxed"> <ul class="tabbable-tabs" data-tabbable-tabs="v1_crmdokumente_post_response"> <li> <a id="v1_crmdokumente_post_response_0" href="#v1_crmdokumente_post_response_0" data-tab="0"> <span class="status" data-code="200"></span> </a> </li> <li> <a id="v1_crmdokumente_post_response_1" href="#v1_crmdokumente_post_response_1" data-tab="1"> <span class="status" data-code="400"></span> </a> </li> </ul> </header> <div class="tabbable-contents" data-tabbable-contents="v1_crmdokumente_post_response"> <div data-tab-content="0"> <div class="content"> <p>Request erfolgreich</p> </div> <div class="tabbable" data-component="tabbable" data-tabbable-id="undefined_body"> <header class="tabs is-boxed"> <strong class="title is-6">Body</strong> <ul class="tabbable-tabs" data-tabbable-tabs="undefined_body"> <li> <a id="v1_crmdokumente_post_body_0" href="#v1_crmdokumente_post_body_0" data-tab="0"> application/json </a> </li> </ul> </header> <div class="tabbable-contents" data-tabbable-contents="undefined_body"> <div data-tab-content="0"> <h6 class="title is-6"></h6> <ul> <li> <details> <summary>Example</summary> <pre><code>{
|
|||
|
"success": true,
|
|||
|
"data": {
|
|||
|
"id": 14,
|
|||
|
"adresse_from": 1,
|
|||
|
"adresse_to": 7,
|
|||
|
"typ": "email",
|
|||
|
"von": "",
|
|||
|
"an": "",
|
|||
|
"email_an": "",
|
|||
|
"send_as": "",
|
|||
|
"email": "",
|
|||
|
"email_cc": null,
|
|||
|
"email_bcc": null,
|
|||
|
"bearbeiter": null,
|
|||
|
"firma_an": "",
|
|||
|
"adresse": "",
|
|||
|
"ansprechpartner": null,
|
|||
|
"plz": "",
|
|||
|
"ort": "",
|
|||
|
"land": "",
|
|||
|
"datum": "0000-00-00",
|
|||
|
"uhrzeit": null,
|
|||
|
"betreff": "AW: Antwort auf eine Frage",
|
|||
|
"content": "",
|
|||
|
"projekt": 1,
|
|||
|
"internebezeichnung": "",
|
|||
|
"signatur": 0,
|
|||
|
"fax": 0,
|
|||
|
"sent": 0,
|
|||
|
"printer": 0,
|
|||
|
"deleted": 0
|
|||
|
}
|
|||
|
}
|
|||
|
</code></pre> </details> </li> </ul> </div> </div> </div> </div> <div data-tab-content="1"> <div class="content"> <p>Request Body Fehlerhaft</p> </div> <div class="tabbable" data-component="tabbable" data-tabbable-id="undefined_body"> <header class="tabs is-boxed"> <strong class="title is-6">Body</strong> <ul class="tabbable-tabs" data-tabbable-tabs="undefined_body"> <li> <a id="v1_crmdokumente_post_body_0" href="#v1_crmdokumente_post_body_0" data-tab="0"> application/json </a> </li> </ul> </header> <div class="tabbable-contents" data-tabbable-contents="undefined_body"> <div data-tab-content="0"> <h6 class="title is-6"></h6> <ul> <li> <details> <summary>Example</summary> <pre><code>{
|
|||
|
"error": {
|
|||
|
"code": 7453,
|
|||
|
"http_code": 400,
|
|||
|
"message": "Validation error",
|
|||
|
"href": "http://localhost/xentral/20.1/www/api/docs.html#error-7453",
|
|||
|
"details": [
|
|||
|
"The attribute 'betreff' is required."
|
|||
|
]
|
|||
|
}
|
|||
|
}
|
|||
|
</code></pre> </details> </li> </ul> </div> </div> </div> </div> </div> </div> </div> </div> <!-- end of resource block for POST /v1/crmdokumente --> <!-- end of list of methods for /v1/crmdokumente --> <!-- list of methods for /v1/crmdokumente/{id} --> <span id="v1_crmdokumente__id_" class="group-resource-group-marker" data-spy data-spy-parent="v1_crmdokumente"></span> <!-- begin of resource block for GET /v1/crmdokumente/{id} --> <div id="v1_crmdokumente__id__get" class="group-endpoint" data-spy data-spy-parent="v1_crmdokumente__id_"> <header> <h4 class="title is-4 is-anchored"> Einzelnes CRM-Dokument abrufen <a class="anchor" href="#v1_crmdokumente__id__get">¶</a> <div class="subtitle is-6"> <strong class="method is-get">GET</strong> <span class="value">/v1/crmdokumente/{id}</span> </div> </h4> <div class="content"> <p>Einzelnes CRM-Dokument abrufen.</p> <p>Permission: <code>view_crm_document</code></p> </div> </header> <div> <h5 class="title is-5">Request</h5> <div class="indent"> <h6 class="title is-6">Path Variables</h6> <table class="table is-property-list"> <tbody> <tr> <th scope="row"> id <div class="typedef-type">integer, <strong class="typedef-required">required</strong></div> </th> <td> <div class="content"> <p>CRM-Dokumenten-ID</p> </div> </td> </tr> </tbody> </table> </div> <h5 class="title is-5">Response</h5> <div class="tabbable is-vertical" data-component="tabbable" data-tabbable-id="v1_crmdokumente__id__get_response"> <header class="tabs is-boxed"> <ul class="tabbable-tabs" data-tabbable-tabs="v1_crmdokumente__id__get_response"> <li> <a id="v1_crmdokumente__id__get_response_0" href="#v1_crmdokumente__id__get_response_0" data-tab="0"> <span class="status" data-code="200"></span> </a> </li> <li> <a id="v1_crmdokumente__id__get_response_1" href="#v1_crmdokumente__id__get_response_1" data-tab="1"> <span class="status" data-code="404"></span> </a> </li> </ul> </header> <div class="tabbable-contents" data-tabbable-contents="v1_crmdokumente__id__get_response"> <div data-tab-content="0"> <div class="content"> <p>Request erfolgreich</p> </div> <div class="tabbable" data-component="tabbable" data-tabbable-id="undefined_body"> <header class="tabs is-boxed"> <strong class="title is-6">Body</strong> <ul class="tabbable-tabs" data-tabbable-tabs="undefined_body"> <li> <a id="v1_crmdokumente__id__get_body_0" href="#v1_crmdokumente__id__get_body_0" data-tab="0"> application/json </a> </li> </ul> </header> <div class="tabbable-contents" data-tabbable-contents="undefined_body"> <div data-tab-content="0"> <h6 class="title is-6"></h6> <ul> <li> <details> <summary>Example</summary> <pre><code>{
|
|||
|
"data": {
|
|||
|
"id": 4,
|
|||
|
"adresse_from": 1,
|
|||
|
"adresse_to": 7,
|
|||
|
"typ": "telefon",
|
|||
|
"von": "",
|
|||
|
"an": "",
|
|||
|
"email_an": "",
|
|||
|
"send_as": "",
|
|||
|
"email": "",
|
|||
|
"email_cc": "",
|
|||
|
"email_bcc": "",
|
|||
|
"bearbeiter": "Mitarbeiter XY",
|
|||
|
"firma_an": "",
|
|||
|
"adresse": "",
|
|||
|
"ansprechpartner": "",
|
|||
|
"plz": "",
|
|||
|
"ort": "",
|
|||
|
"land": "",
|
|||
|
"datum": "2019-11-05",
|
|||
|
"uhrzeit": "12:04:00",
|
|||
|
"betreff": "Fragen zur Bedienung",
|
|||
|
"content": "- Keine Fragen, alles klar",
|
|||
|
"projekt": 1,
|
|||
|
"internebezeichnung": "",
|
|||
|
"signatur": 0,
|
|||
|
"fax": 0,
|
|||
|
"sent": 0,
|
|||
|
"printer": 0,
|
|||
|
"deleted": 0
|
|||
|
}
|
|||
|
}
|
|||
|
</code></pre> </details> </li> </ul> </div> </div> </div> </div> <div data-tab-content="1"> <div class="content"> <p>CRM-Dokument wurde nicht gefunden</p> </div> <div class="tabbable" data-component="tabbable" data-tabbable-id="undefined_body"> <header class="tabs is-boxed"> <strong class="title is-6">Body</strong> <ul class="tabbable-tabs" data-tabbable-tabs="undefined_body"> <li> <a id="v1_crmdokumente__id__get_body_0" href="#v1_crmdokumente__id__get_body_0" data-tab="0"> application/json </a> </li> </ul> </header> <div class="tabbable-contents" data-tabbable-contents="undefined_body"> <div data-tab-content="0"> <h6 class="title is-6"></h6> <ul> <li> <details> <summary>Example</summary> <pre><code>{
|
|||
|
"error": {
|
|||
|
"code": 7452,
|
|||
|
"http_code": 404,
|
|||
|
"message": "Resource not found",
|
|||
|
"href": "http://www.example.com/api/docs.html#error-7452"
|
|||
|
}
|
|||
|
}
|
|||
|
</code></pre> </details> </li> </ul> </div> </div> </div> </div> </div> </div> </div> </div> <!-- end of resource block for GET /v1/crmdokumente/{id} --> <!-- begin of resource block for PUT /v1/crmdokumente/{id} --> <div id="v1_crmdokumente__id__put" class="group-endpoint" data-spy data-spy-parent="v1_crmdokumente__id_"> <header> <h4 class="title is-4 is-anchored"> CRM-Dokument bearbeiten <a class="anchor" href="#v1_crmdokumente__id__put">¶</a> <div class="subtitle is-6"> <strong class="method is-put">PUT</strong> <span class="value">/v1/crmdokumente/{id}</span> </div> </h4> <div class="content"> <p>CRM-Dokument bearbeiten</p> <p>Permission: <code>view_crm_document</code></p> </div> </header> <div> <h5 class="title is-5">Request</h5> <div class="indent"> <h6 class="title is-6">Path Variables</h6> <table class="table is-property-list"> <tbody> <tr> <th scope="row"> id <div class="typedef-type">integer, <strong class="typedef-required">required</strong></div> </th> <td> <div class="content"> <p>CRM-Dokumenten-ID</p> </div> </td> </tr> </tbody> </table> <div class="tabbable" data-component="tabbable" data-tabbable-id="undefined_body"> <header class="tabs is-boxed"> <strong class="title is-6">Body</strong> <ul class="tabbable-tabs" data-tabbable-tabs="undefined_body"> <li> <a id="v1_crmdokumente__id__put_body_0" href="#v1_crmdokumente__id__put_body_0" data-tab="0"> application/json </a> </li> </ul> </header> <div class="tabbable-contents" data-tabbable-contents="undefined_body"> <div data-tab-content="0"> <h6 class="title is-6">Properties (object)</h6> <table class="table is-property-list"> <tbody> <tr> <th scope="row"> typ <div class="typedef-type">string, <strong class="typedef-required">required</strong></div> </th> <td> <div class="content"> <p>Mögliche Werte sind <code>email</code>, <code>brief</code>, <code>telefon</code>, <code>notiz</code></p> </div> </td> </tr> <tr> <th scope="row"> betreff <div class="typedef-type">string, <strong class="typedef-required">required</strong></div> </th> <td> <div class="content"> <p>Betreff des CRM-Dokuments</p> </div> </td> </tr> <tr> <th scope="row"> content <div class="typedef-type">string, optional</div> </th> <td> <div class="content"> <p>Inhalt des CRM-Dokuments</p> </div> </td> </tr> <tr> <th scope="row"> adresse_from <div class="typedef-type">integer, optional</div> </th> <td> <div class="content"> <p>Absender/Mitarbeiter (Adresse-ID)</p> </div> </td> </tr> <tr> <th scope="row"> adresse_to <div class="typedef-type">integer, optional</div> </th> <td> <div class="content"> <p>Empfänger/Kunde (Adresse-ID)</p> </div> </td> </tr> <tr> <th scope="row"> von <div class="typedef-type">string, optional</div> </th> <td> <div class="content"> <p>Anzeigename Absender</p> </div> </td> </tr> <tr> <th scope="row"> an <div class="typedef-type">string, optional</div> </th> <td> <div class="content"> <p>Anzeigename Empfänger</p> </div> </td> </tr> <tr> <th scope="row"> email_an <div class="typedef-type">string, optional</div> </th> <td> <div class="content"> <p>E-Mail Adresse Empfänger</p> </div> </td> </tr> <tr> <th scope="row"> email_cc <div class="typedef-type">string, optional</div> </th> <td> <div class="content"> <p>E-Mail Adresse CC</p> </div> </td> </tr> <tr> <th scope="row"> email_bcc <div class="typedef-type">string, optional</div> </th> <td> <div class="content"> <p>E-Mail Adresse BCC</p> </div> </td> </tr> <tr> <th scope="row"> adresse <div class="typedef-type">string, optional</div> </th> <td> <div class="content"> <p>Anschrift 1. Adresszeile</p> </div> </td> </tr> <tr> <th scope="row"> plz <div class="typedef-type">string, optional</div> </th> <td> <div class="content"> <p>Anschrift Postleitzahl</p> </div> </td> </tr> <tr> <th scope="row"> ort <div class="typedef-type">string, optional</div> </th> <td> <div class="content"> <p>Anschrift Ort</p> </div> </td> </tr> <tr> <th scope="row"> land <div class="typedef-type">string, optional</div> </th> <td> <div class="content"> <p>Anschrift Land</p> </div> </td> </tr> <tr> <th scope="row"> datum <div class="typedef-type">date-only,
|
|||
|
"typ": "brief",
|
|||
|
"betreff": "Test Brief 14"
|
|||
|
}
|
|||
|
</code></pre> </details> </li> </ul> </div> </div> </div> </div> <h5 class="title is-5">Response</h5> <div class="tabbable is-vertical" data-component="tabbable" data-tabbable-id="v1_crmdokumente__id__put_response"> <header class="tabs is-boxed"> <ul class="tabbable-tabs" data-tabbable-tabs="v1_crmdokumente__id__put_response"> <li> <a id="v1_crmdokumente__id__put_response_0" href="#v1_crmdokumente__id__put_response_0" data-tab="0"> <span class="status" data-code="200"></span> </a> </li> <li> <a id="v1_crmdokumente__id__put_response_1" href="#v1_crmdokumente__id__put_response_1" data-tab="1"> <span class="status" data-code="400"></span> </a> </li> <li> <a id="v1_crmdokumente__id__put_response_2" href="#v1_crmdokumente__id__put_response_2" data-tab="2"> <span class="status" data-code="404"></span> </a> </li> </ul> </header> <div class="tabbable-contents" data-tabbable-contents="v1_crmdokumente__id__put_response"> <div data-tab-content="0"> <div class="content"> <p>Request erfolgreich</p> </div> <div class="tabbable" data-component="tabbable" data-tabbable-id="undefined_body"> <header class="tabs is-boxed"> <strong class="title is-6">Body</strong> <ul class="tabbable-tabs" data-tabbable-tabs="undefined_body"> <li> <a id="v1_crmdokumente__id__put_body_0" href="#v1_crmdokumente__id__put_body_0" data-tab="0"> application/json </a> </li> </ul> </header> <div class="tabbable-contents" data-tabbable-contents="undefined_body"> <div data-tab-content="0"> <h6 class="title is-6"></h6> <ul> <li> <details> <summary>Example</summary> <pre><code>{
|
|||
|
"success": true,
|
|||
|
"data": {
|
|||
|
"id": 14,
|
|||
|
"adresse_from": 1,
|
|||
|
"adresse_to": 7,
|
|||
|
"typ": "brief",
|
|||
|
"von": "",
|
|||
|
"an": "",
|
|||
|
"email_an": "",
|
|||
|
"send_as": "",
|
|||
|
"email": "",
|
|||
|
"email_cc": null,
|
|||
|
"email_bcc": null,
|
|||
|
"bearbeiter": null,
|
|||
|
"firma_an": "",
|
|||
|
"adresse": "",
|
|||
|
"ansprechpartner": null,
|
|||
|
"plz": "",
|
|||
|
"ort": "",
|
|||
|
"land": "",
|
|||
|
"datum": "0000-00-00",
|
|||
|
"uhrzeit": null,
|
|||
|
"betreff": "Test Brief 14",
|
|||
|
"content": "",
|
|||
|
"projekt": 1,
|
|||
|
"internebezeichnung": "",
|
|||
|
"signatur": 0,
|
|||
|
"fax": 0,
|
|||
|
"sent": 0,
|
|||
|
"printer": 0,
|
|||
|
"deleted": 0
|
|||
|
}
|
|||
|
}
|
|||
|
</code></pre> </details> </li> </ul> </div> </div> </div> </div> <div data-tab-content="1"> <div class="content"> <p>Request Body Fehlerhaft</p> </div> <div class="tabbable" data-component="tabbable" data-tabbable-id="undefined_body"> <header class="tabs is-boxed"> <strong class="title is-6">Body</strong> <ul class="tabbable-tabs" data-tabbable-tabs="undefined_body"> <li> <a id="v1_crmdokumente__id__put_body_0" href="#v1_crmdokumente__id__put_body_0" data-tab="0"> application/json </a> </li> </ul> </header> <div class="tabbable-contents" data-tabbable-contents="undefined_body"> <div data-tab-content="0"> <h6 class="title is-6"></h6> <ul> <li> <details> <summary>Example</summary> <pre><code>{
|
|||
|
"error": {
|
|||
|
"code": 7453,
|
|||
|
"http_code": 400,
|
|||
|
"message": "Validation error",
|
|||
|
"href": "http://localhost/xentral/20.1/www/api/docs.html#error-7453",
|
|||
|
"details": [
|
|||
|
"The attribute 'betreff' is required."
|
|||
|
]
|
|||
|
}
|
|||
|
}
|
|||
|
</code></pre> </details> </li> </ul> </div> </div> </div> </div> <div data-tab-content="2"> <div class="content"> <p>CRM-Dokument wurde nicht gefunden</p> </div> <div class="tabbable" data-component="tabbable" data-tabbable-id="undefined_body"> <header class="tabs is-boxed"> <strong class="title is-6">Body</strong> <ul class="tabbable-tabs" data-tabbable-tabs="undefined_body"> <li> <a id="v1_crmdokumente__id__put_body_0" href="#v1_crmdokumente__id__put_body_0" data-tab="0"> application/json </a> </li> </ul> </header> <div class="tabbable-contents" data-tabbable-contents="undefined_body"> <div data-tab-content="0"> <h6 class="title is-6"></h6> <ul> <li> <details> <summary>Example</summary> <pre><code>{
|
|||
|
"error": {
|
|||
|
"code": 7452,
|
|||
|
"http_code": 404,
|
|||
|
"message": "Resource not found",
|
|||
|
"href": "http://www.example.com/api/docs.html#error-7452"
|
|||
|
}
|
|||
|
}
|
|||
|
</code></pre> </details> </li> </ul> </div> </div> </div> </div> </div> </div> </div> </div> <!-- end of resource block for PUT /v1/crmdokumente/{id} --> <!-- begin of resource block for DELETE /v1/crmdokumente/{id} --> <div id="v1_crmdokumente__id__delete" class="group-endpoint" data-spy data-spy-parent="v1_crmdokumente__id_"> <header> <h4 class="title is-4 is-anchored"> CRM-Dokument löschen <a class="anchor" href="#v1_crmdokumente__id__delete">¶</a> <div class="subtitle is-6"> <strong class="method is-delete">DELETE</strong> <span class="value">/v1/crmdokumente/{id}</span> </div> </h4> <div class="content"> <p>CRM-Dokument löschen</p> <p>Permission: <code>delete_crm_document</code></p> </div> </header> <div> <h5 class="title is-5">Request</h5> <div class="indent"> <h6 class="title is-6">Path Variables</h6> <table class="table is-property-list"> <tbody> <tr> <th scope="row"> id <div class="typedef-type">integer, <strong class="typedef-required">required</strong></div> </th> <td> <div class="content"> <p>CRM-Dokumenten-ID</p> </div> </td> </tr> </tbody> </table> </div> <h5 class="title is-5">Response</h5> <div class="tabbable is-vertical" data-component="tabbable" data-tabbable-id="v1_crmdokumente__id__delete_response"> <header class="tabs is-boxed"> <ul class="tabbable-tabs" data-tabbable-tabs="v1_crmdokumente__id__delete_response"> <li> <a id="v1_crmdokumente__id__delete_response_0" href="#v1_crmdokumente__id__delete_response_0" data-tab="0"> <span class="status" data-code="200"></span> </a> </li> <li> <a id="v1_crmdokumente__id__delete_response_1" href="#v1_crmdokumente__id__delete_response_1" data-tab="1"> <span class="status" data-code="404"></span> </a> </li> </ul> </header> <div class="tabbable-contents" data-tabbable-contents="v1_crmdokumente__id__delete_response"> <div data-tab-content="0"> <div class="content"> <p>Request erfolgreich</p> </div> <div class="tabbable" data-component="tabbable" data-tabbable-id="undefined_body"> <header class="tabs is-boxed"> <strong class="title is-6">Body</strong> <ul class="tabbable-tabs" data-tabbable-tabs="undefined_body"> <li> <a id="v1_crmdokumente__id__delete_body_0" href="#v1_crmdokumente__id__delete_body_0" data-tab="0"> application/json </a> </li> </ul> </header> <div class="tabbable-contents" data-tabbable-contents="undefined_body"> <div data-tab-content="0"> <h6 class="title is-6"></h6> <ul> <li> <details> <summary>Example</summary> <pre><code>{
|
|||
|
"success": true,
|
|||
|
"data": {
|
|||
|
"id": 14
|
|||
|
}
|
|||
|
}
|
|||
|
</code></pre> </details> </li> </ul> </div> </div> </div> </div> <div data-tab-content="1"> <div class="content"> <p>CRM-Dokument wurde nicht gefunden</p> </div> <div class="tabbable" data-component="tabbable" data-tabbable-id="undefined_body"> <header class="tabs is-boxed"> <strong class="title is-6">Body</strong> <ul class="tabbable-tabs" data-tabbable-tabs="undefined_body"> <li> <a id="v1_crmdokumente__id__delete_body_0" href="#v1_crmdokumente__id__delete_body_0" data-tab="0"> application/json </a> </li> </ul> </header> <div class="tabbable-contents" data-tabbable-contents="undefined_body"> <div data-tab-content="0"> <h6 class="title is-6"></h6> <ul> <li> <details> <summary>Example</summary> <pre><code>{
|
|||
|
"error": {
|
|||
|
"code": 7452,
|
|||
|
"http_code": 404,
|
|||
|
"message": "Resource not found",
|
|||
|
"href": "http://www.example.com/api/docs.html#error-7452"
|
|||
|
}
|
|||
|
}
|
|||
|
</code></pre> </details> </li> </ul> </div> </div> </div> </div> </div> </div> </div> </div> <!-- end of resource block for DELETE /v1/crmdokumente/{id} --> <!-- end of list of methods for /v1/crmdokumente/{id} --> </div> <div id="v1_dateien" class="group" data-spy data-spy-parent="__all_resources"> <header class="group-header"> <div class="group-title"> <h3 class="title is-3">/v1/dateien</h3> </div> <div class="content"> <p>Dateiliste abrufen und Dateien downloaden</p> </div> </header> <!-- list of methods for /v1/dateien --> <!-- begin of resource block for GET /v1/dateien --> <div id="v1_dateien_get" class="group-endpoint" data-spy data-spy-parent="v1_dateien"> <header> <h4 class="title is-4 is-anchored"> Dateiliste abrufen <a class="anchor" href="#v1_dateien_get">¶</a> <div class="subtitle is-6"> <strong class="method is-get">GET</strong> <span class="value">/v1/dateien</span> </div> </h4> <div class="content"> <p>Dateiliste abrufen.</p> <p>Permission: <code>list_files</code></p> </div> </header> <div> <h5 class="title is-5">Request</h5> <div class="indent"> <h6 class="title is-6">Query Parameters</h6> <table class="table is-property-list"> <tbody> <tr> <th scope="row"> titel <div class="typedef-type">string, optional</div> </th> <td> <div class="content"> <p>Suche nach Dateititel (ungefähre Übereinstimmung)</p> </div> </td> </tr> <tr> <th scope="row"> titel_equals <div class="typedef-type">string, optional</div> </th> <td> <div class="content"> <p>Suche nach Dateititel (genaue Übereinstimmung)</p> </div> </td> </tr> <tr> <th scope="row"> titel_startswith <div class="typedef-type">string, optional</div> </th> <td> <div class="content"> <p>Suche nach Dateititel (Übereinstimmung am Anfang)</p> </div> </td> </tr> <tr> <th scope="row"> titel_endswith <div class="typedef-type">string, optional</div> </th> <td> <div class="content"> <p>Suche nach Dateititel (Übereinstimmung am Ende)</p> </div> </td> </tr> <tr> <th scope="row"> dateiname <div class="typedef-type">string, optional</div> </th> <td> <div class="content"> <p>Suche nach Dateiname (ungefähre Übereinstimmung)</p> </div> </td> </tr> <tr> <th scope="row"> dateiname_equals <div class="typedef-type">string, optional</div> </th> <td> <div class="content"> <p>Suche nach Dateiname (genaue Übereinstimmung)</p> </div> </td> </tr> <tr> <th scope="row"> dateiname_startswith <div class="typedef-type">string, optional</div> </th> <td> <div class="content"> <p>Suche nach Dateiname (Übereinstimmung am Anfang)</p> </div> </td> </tr> <tr> <th scope="row"> dateiname_endswith <div class="typedef-type">string, optional</div> </th> <td> <div class="content"> <p>Suche nach Dateiname (Übereinstimmung am Ende)</p> </div> </td> </tr> <tr> <th scope="row"> belegtyp <div class="typedef-type">string, optional</div> </th> <td> <div class="content"> <p>Suche nach Zuweisungen zu Belegtyp (ungefähre Übereinstimmung)</p> </div> </td> </tr> <tr> <th scope="row"> stichwort <div class="typedef-type">string, optional</div> </th> <td> <div class="content"> <p>Suche nach Stichwort (ungefähre Übereinstimmung)</p> </div> </td> </tr> <tr> <th scope="row"> sort <div class="typedef-type">string, optional</div> </th> <td> <div class="content"> <p>Sortierung (Beispiel: <code>sort=dateiname</code>)</p> <p>Verfügbare Felder: <code>dateiname</code>, <code>datum</code>, <code>titel</code></p> </div> </td> </tr> <tr> <th scope="row"> include <div class="typedef-type">string, optional</div> </th> <td> <div class="content"> <p>Unter-Resourcen in Resource einbinden (Beispiel: <code>include=stichwoerter</code>)</p> <p>Verfügbare Includes: <code>stichwoerter</code></p> </div> </td> </tr> <tr> <th scope="row"> page <div class="typedef-type">integer , default: <code>1</code>, maximum: 1000, optional</div> </th> <td> <div class="content"> <p>Seitenzahl</p> </div> </td> </tr> <tr> <th scope="row"> items <div class="typedef-type">integer , default: <code>20</code>, maximum: 1000, optional</div> </th> <td> <div class="content"> <p>Anzahl der Ergebnisse pro Seite</p> </div> </td> </tr> </tbody> </table> </di
|
|||
|
"success": true,
|
|||
|
"data": {
|
|||
|
"id": 123,
|
|||
|
"titel": "Rechnung 400027",
|
|||
|
"beschreibung": "Rechnung 400027 von Kunde Max Mustermann",
|
|||
|
"nummer": "",
|
|||
|
"firma": 1,
|
|||
|
"ersteller": "",
|
|||
|
"datum": "2018-11-15",
|
|||
|
"version": 1,
|
|||
|
"dateiname": "RE400027.pdf",
|
|||
|
"bemerkung": "Initiale Version",
|
|||
|
"size": "8427",
|
|||
|
"stichwoerter": null,
|
|||
|
"belegtypen": null,
|
|||
|
"mimetype": "application/pdf",
|
|||
|
"links": {
|
|||
|
"download": "http://www.example.com/api/v1/dateien/123/download",
|
|||
|
"base64": "http://www.example.com/api/v1/dateien/123/base64"
|
|||
|
}
|
|||
|
}
|
|||
|
}
|
|||
|
</code></pre> </details> </li> </ul> </div> </div> </div> </div> </div> </div> </div> </div> <!-- end of resource block for POST /v1/dateien --> <!-- end of list of methods for /v1/dateien --> <!-- list of methods for /v1/dateien/{id} --> <span id="v1_dateien__id_" class="group-resource-group-marker" data-spy data-spy-parent="v1_dateien"></span> <!-- begin of resource block for GET /v1/dateien/{id} --> <div id="v1_dateien__id__get" class="group-endpoint" data-spy data-spy-parent="v1_dateien__id_"> <header> <h4 class="title is-4 is-anchored"> Informationen zu einer Datei abrufen <a class="anchor" href="#v1_dateien__id__get">¶</a> <div class="subtitle is-6"> <strong class="method is-get">GET</strong> <span class="value">/v1/dateien/{id}</span> </div> </h4> <div class="content"> <p>Informationen zu einer Datei abrufen</p> <p>Permission: <code>view_file</code></p> </div> </header> <div> <h5 class="title is-5">Request</h5> <div class="indent"> <h6 class="title is-6">Path Variables</h6> <table class="table is-property-list"> <tbody> <tr> <th scope="row"> id <div class="typedef-type">integer, <strong class="typedef-required">required</strong></div> </th> <td> <div class="content"> <p>Datei-ID</p> </div> </td> </tr> </tbody> </table> </div> <h5 class="title is-5">Response</h5> <div class="tabbable is-vertical" data-component="tabbable" data-tabbable-id="v1_dateien__id__get_response"> <header class="tabs is-boxed"> <ul class="tabbable-tabs" data-tabbable-tabs="v1_dateien__id__get_response"> <li> <a id="v1_dateien__id__get_response_0" href="#v1_dateien__id__get_response_0" data-tab="0"> <span class="status" data-code="200"></span> </a> </li> <li> <a id="v1_dateien__id__get_response_1" href="#v1_dateien__id__get_response_1" data-tab="1"> <span class="status" data-code="404"></span> </a> </li> </ul> </header> <div class="tabbable-contents" data-tabbable-contents="v1_dateien__id__get_response"> <div data-tab-content="0"> <div class="content"> <p>Request erfolgreich</p> </div> <div class="tabbable" data-component="tabbable" data-tabbable-id="undefined_body"> <header class="tabs is-boxed"> <strong class="title is-6">Body</strong> <ul class="tabbable-tabs" data-tabbable-tabs="undefined_body"> <li> <a id="v1_dateien__id__get_body_0" href="#v1_dateien__id__get_body_0" data-tab="0"> application/json </a> </li> </ul> </header> <div class="tabbable-contents" data-tabbable-contents="undefined_body"> <div data-tab-content="0"> <h6 class="title is-6"></h6> <ul> <li> <details> <summary>Example</summary> <pre><code>{
|
|||
|
"data": {
|
|||
|
"id": 115,
|
|||
|
"titel": "Rechnung 400027",
|
|||
|
"beschreibung": "",
|
|||
|
"nummer": "",
|
|||
|
"firma": 1,
|
|||
|
"ersteller": "Max Mustermann",
|
|||
|
"datum": "2018-11-15",
|
|||
|
"version": 1,
|
|||
|
"dateiname": "RE400027.pdf",
|
|||
|
"bemerkung": "Initiale Version",
|
|||
|
"size": "8427",
|
|||
|
"stichwoerter": "Belege",
|
|||
|
"belegtypen": "Verbindlichkeiten",
|
|||
|
"mimetype": "application/pdf",
|
|||
|
"links": {
|
|||
|
"download": "http://www.example.com/api/v1/dateien/115/download",
|
|||
|
"base64": "http://www.example.com/api/v1/dateien/115/base64"
|
|||
|
}
|
|||
|
}
|
|||
|
}
|
|||
|
</code></pre> </details> </li> </ul> </div> </div> </div> </div> <div data-tab-content="1"> <div class="content"> <p>Datei wurde nicht gefunden</p> </div> <div class="tabbable" data-component="tabbable" data-tabbable-id="undefined_body"> <header class="tabs is-boxed"> <strong class="title is-6">Body</strong> <ul class="tabbable-tabs" data-tabbable-tabs="undefined_body"> <li> <a id="v1_dateien__id__get_body_0" href="#v1_dateien__id__get_body_0" data-tab="0"> application/json </a> </li> </ul> </header> <div class="tabbable-contents" data-tabbable-contents="undefined_body"> <div data-tab-content="0"> <h6 class="title is-6"></h6> <ul> <li> <details> <summary>Example</summary> <pre><code>{
|
|||
|
"error": {
|
|||
|
"code": 7452,
|
|||
|
"http_code": 404,
|
|||
|
"message": "Resource not found",
|
|||
|
"href": "http://www.example.com/api/docs.html#error-7452"
|
|||
|
}
|
|||
|
}
|
|||
|
</code></pre> </details> </li> </ul> </div> </div> </div> </div> </div> </div> </div> </div> <!-- end of resource block for GET /v1/dateien/{id} --> <!-- end of list of methods for /v1/dateien/{id} --> <!-- list of methods for /v1/dateien/{id}/download --> <span id="v1_dateien__id__download" class="group-resource-group-marker" data-spy data-spy-parent="v1_dateien__id_"></span> <!-- begin of resource block for GET /v1/dateien/{id}/download --> <div id="v1_dateien__id__download_get" class="group-endpoint" data-spy data-spy-parent="v1_dateien__id__download"> <header> <h4 class="title is-4 is-anchored"> Datei downloaden <a class="anchor" href="#v1_dateien__id__download_get">¶</a> <div class="subtitle is-6"> <strong class="method is-get">GET</strong> <span class="value">/v1/dateien/{id}/download</span> </div> </h4> <div class="content"> <p>Datei downloaden</p> <p>Permission: <code>handle_assets</code></p> </div> </header> <div> <h5 class="title is-5">Request</h5> <div class="indent"> <h6 class="title is-6">Path Variables</h6> <table class="table is-property-list"> <tbody> <tr> <th scope="row"> id <div class="typedef-type">integer, <strong class="typedef-required">required</strong></div> </th> <td> <div class="content"> <p>Datei-ID</p> </div> </td> </tr> </tbody> </table> </div> <h5 class="title is-5">Response</h5> <div class="tabbable is-vertical" data-component="tabbable" data-tabbable-id="v1_dateien__id__download_get_response"> <header class="tabs is-boxed"> <ul class="tabbable-tabs" data-tabbable-tabs="v1_dateien__id__download_get_response"> <li> <a id="v1_dateien__id__download_get_response_0" href="#v1_dateien__id__download_get_response_0" data-tab="0"> <span class="status" data-code="200"></span> </a> </li> </ul> </header> <div class="tabbable-contents" data-tabbable-contents="v1_dateien__id__download_get_response"> <div data-tab-content="0"> <div class="content"> <p>Request erfolgreich</p> <p>Der Content-Type ist abhängig vom Mime-Type der Datei die gesendet wird.</p> </div> </div> </div> </div> </div> </div> <!-- end of resource block for GET /v1/dateien/{id}/download --> <!-- end of list of methods for /v1/dateien/{id}/download --> <!-- list of methods for /v1/dateien/{id}/base64 --> <span id="v1_dateien__id__base64" class="group-resource-group-marker" data-spy data-spy-parent="v1_dateien__id_"></span> <!-- begin of resource block for GET /v1/dateien/{id}/base64 --> <div id="v1_dateien__id__base64_get" class="group-endpoint" data-spy data-spy-parent="v1_dateien__id__base64"> <header> <h4 class="title is-4 is-anchored"> Dateiinhalt base64-kodiert abrufen <a class="anchor" href="#v1_dateien__id__base64_get">¶</a> <div class="subtitle is-6"> <strong class="method is-get">GET</strong> <span class="value">/v1/dateien/{id}/base64</span> </div> </h4> <div class="content"> <p>Dateiinhalt base64-kodiert abrufen</p> <p>Permission: <code>handle_assets</code></p> </div> </header> <div> <h5 class="title is-5">Request</h5> <div class="indent"> <h6 class="title is-6">Path Variables</h6> <table class="table is-property-list"> <tbody> <tr> <th scope="row"> id <div class="typedef-type">integer, <strong class="typedef-required">required</strong></div> </th> <td> <div class="content"> <p>Datei-ID</p> </div> </td> </tr> </tbody> </table> </div> <h5 class="title is-5">Response</h5> <div class="tabbable is-vertical" data-component="tabbable" data-tabbable-id="v1_dateien__id__base64_get_response"> <header class="tabs is-boxed"> <ul class="tabbable-tabs" data-tabbable-tabs="v1_dateien__id__base64_get_response"> <li> <a id="v1_dateien__id__base64_get_response_0" href="#v1_dateien__id__base64_get_response_0" data-tab="0"> <span class="status" data-code="200"></span> </a> </li> </ul> </header> <div class="tabbable-contents" data-tabbable-contents="v1_dateien__id__base64_get_response"> <div data-tab-content="0"> <div class="content"> <p>Request erfolgreich</p> </div> <div class="tabbable" data-component="tabbable" data-tabbable-id="undefined_body"> <header class="tabs is-boxed"> <strong class="title is-6">Body</strong> <ul class="tabbable-tab
|
|||
|
"success": true,
|
|||
|
"data": {
|
|||
|
"id": 123,
|
|||
|
"titel": "Rechnung 400027",
|
|||
|
"beschreibung": "Rechnung 400027 von Kunde Max Mustermann",
|
|||
|
"nummer": "",
|
|||
|
"firma": 1,
|
|||
|
"ersteller": "",
|
|||
|
"datum": "2018-11-15",
|
|||
|
"version": 1,
|
|||
|
"dateiname": "RE400027.pdf",
|
|||
|
"bemerkung": "Initiale Version",
|
|||
|
"size": "8427",
|
|||
|
"mimetype": "application/pdf",
|
|||
|
"links": {
|
|||
|
"download": "http://www.example.com/api/v1/dateien/123/download",
|
|||
|
"base64": "http://www.example.com/api/v1/dateien/123/base64"
|
|||
|
}
|
|||
|
}
|
|||
|
}
|
|||
|
</code></pre> </details> </li> </ul> </div> </div> </div> </div> </div> </div> </div> </div> <!-- end of resource block for POST /v1/docscan --> <!-- end of list of methods for /v1/docscan --> <!-- list of methods for /v1/docscan/{id} --> <span id="v1_docscan__id_" class="group-resource-group-marker" data-spy data-spy-parent="v1_docscan"></span> <!-- begin of resource block for GET /v1/docscan/{id} --> <div id="v1_docscan__id__get" class="group-endpoint" data-spy data-spy-parent="v1_docscan__id_"> <header> <h4 class="title is-4 is-anchored"> Informationen zu einer DocumentScanner-Datei abrufen <a class="anchor" href="#v1_docscan__id__get">¶</a> <div class="subtitle is-6"> <strong class="method is-get">GET</strong> <span class="value">/v1/docscan/{id}</span> </div> </h4> <div class="content"> <p>Informationen zu einer DocumentScanner-Datei abrufen</p> <p>Permission: <code>view_scanned_documents</code></p> </div> </header> <div> <h5 class="title is-5">Request</h5> <div class="indent"> <h6 class="title is-6">Path Variables</h6> <table class="table is-property-list"> <tbody> <tr> <th scope="row"> id <div class="typedef-type">integer, <strong class="typedef-required">required</strong></div> </th> <td> <div class="content"> <p>Datei-ID</p> </div> </td> </tr> </tbody> </table> </div> <h5 class="title is-5">Response</h5> <div class="tabbable is-vertical" data-component="tabbable" data-tabbable-id="v1_docscan__id__get_response"> <header class="tabs is-boxed"> <ul class="tabbable-tabs" data-tabbable-tabs="v1_docscan__id__get_response"> <li> <a id="v1_docscan__id__get_response_0" href="#v1_docscan__id__get_response_0" data-tab="0"> <span class="status" data-code="200"></span> </a> </li> <li> <a id="v1_docscan__id__get_response_1" href="#v1_docscan__id__get_response_1" data-tab="1"> <span class="status" data-code="404"></span> </a> </li> </ul> </header> <div class="tabbable-contents" data-tabbable-contents="v1_docscan__id__get_response"> <div data-tab-content="0"> <div class="content"> <p>Request erfolgreich</p> </div> <div class="tabbable" data-component="tabbable" data-tabbable-id="undefined_body"> <header class="tabs is-boxed"> <strong class="title is-6">Body</strong> <ul class="tabbable-tabs" data-tabbable-tabs="undefined_body"> <li> <a id="v1_docscan__id__get_body_0" href="#v1_docscan__id__get_body_0" data-tab="0"> application/json </a> </li> </ul> </header> <div class="tabbable-contents" data-tabbable-contents="undefined_body"> <div data-tab-content="0"> <h6 class="title is-6"></h6> <ul> <li> <details> <summary>Example</summary> <pre><code>{
|
|||
|
"data": {
|
|||
|
"id": 115,
|
|||
|
"titel": "Rechnung 400027",
|
|||
|
"beschreibung": "",
|
|||
|
"nummer": "",
|
|||
|
"firma": 1,
|
|||
|
"ersteller": "Max Mustermann",
|
|||
|
"datum": "2018-11-15",
|
|||
|
"version": 1,
|
|||
|
"dateiname": "RE400027.pdf",
|
|||
|
"bemerkung": "Initiale Version",
|
|||
|
"size": "8427",
|
|||
|
"mimetype": "application/pdf",
|
|||
|
"links": {
|
|||
|
"download": "http://www.example.com/api/v1/dateien/115/download",
|
|||
|
"base64": "http://www.example.com/api/v1/dateien/115/base64"
|
|||
|
}
|
|||
|
}
|
|||
|
}
|
|||
|
</code></pre> </details> </li> </ul> </div> </div> </div> </div> <div data-tab-content="1"> <div class="content"> <p>Datei wurde nicht gefunden</p> </div> <div class="tabbable" data-component="tabbable" data-tabbable-id="undefined_body"> <header class="tabs is-boxed"> <strong class="title is-6">Body</strong> <ul class="tabbable-tabs" data-tabbable-tabs="undefined_body"> <li> <a id="v1_docscan__id__get_body_0" href="#v1_docscan__id__get_body_0" data-tab="0"> application/json </a> </li> </ul> </header> <div class="tabbable-contents" data-tabbable-contents="undefined_body"> <div data-tab-content="0"> <h6 class="title is-6"></h6> <ul> <li> <details> <summary>Example</summary> <pre><code>{
|
|||
|
"error": {
|
|||
|
"code": 7452,
|
|||
|
"http_code": 404,
|
|||
|
"message": "Resource not found",
|
|||
|
"href": "http://www.example.com/api/docs.html#error-7452"
|
|||
|
}
|
|||
|
}
|
|||
|
</code></pre> </details> </li> </ul> </div> </div> </div> </div> </div> </div> </div> </div> <!-- end of resource block for GET /v1/docscan/{id} --> <!-- end of list of methods for /v1/docscan/{id} --> </div> <div id="v1_gruppen" class="group" data-spy data-spy-parent="__all_resources"> <header class="group-header"> <div class="group-title"> <h3 class="title is-3">/v1/gruppen</h3> </div> <div class="content"> <p>Gruppen anlegen, bearbeiten und abrufen</p> </div> </header> <!-- list of methods for /v1/gruppen --> <!-- begin of resource block for GET /v1/gruppen --> <div id="v1_gruppen_get" class="group-endpoint" data-spy data-spy-parent="v1_gruppen"> <header> <h4 class="title is-4 is-anchored"> Gruppenliste abrufen <a class="anchor" href="#v1_gruppen_get">¶</a> <div class="subtitle is-6"> <strong class="method is-get">GET</strong> <span class="value">/v1/gruppen</span> </div> </h4> <div class="content"> <p>Gruppenliste abrufen</p> <p>Permission: <code>list_groups</code></p> </div> </header> <div> <h5 class="title is-5">Request</h5> <div class="indent"> <h6 class="title is-6">Query Parameters</h6> <table class="table is-property-list"> <tbody> <tr> <th scope="row"> name <div class="typedef-type">string, optional</div> </th> <td> <div class="content"> <p>Gruppe mit bestimmter Bezeichnung suchen (ungefähre Übereinstimmung)</p> </div> </td> </tr> <tr> <th scope="row"> name_exakt <div class="typedef-type">string, optional</div> </th> <td> <div class="content"> <p>Gruppe mit bestimmter Bezeichnung suchen (genaue Übereinstimmung)</p> </div> </td> </tr> <tr> <th scope="row"> kennziffer <div class="typedef-type">string, optional</div> </th> <td> <div class="content"> <p>Gruppen mit bestimmter Kennziffer suchen (ungefähre Übereinstimmung)</p> </div> </td> </tr> <tr> <th scope="row"> kennziffer_exakt <div class="typedef-type">string, optional</div> </th> <td> <div class="content"> <p>Gruppen mit bestimmter Kennziffer suchen (genaue Übereinstimmung)</p> </div> </td> </tr> <tr> <th scope="row"> art <div class="typedef-type">string, optional</div> </th> <td> <div class="content"> <p>Gruppen mit bestimmter Art suchen (genaue Übereinstimmung)</p> <p>Mögliche Werte: <code>gruppe</code>, <code>preisgruppe</code>, <code>verband</code>, <code>regionalgruppe</code>, <code>kategorie</code>, <code>vertreter</code></p> </div> </td> </tr> <tr> <th scope="row"> projekt <div class="typedef-type">integer, optional</div> </th> <td> <div class="content"> <p>Gruppen mit bestimmten Projekt filtern</p> </div> </td> </tr> <tr> <th scope="row"> kategorie <div class="typedef-type">integer, optional</div> </th> <td> <div class="content"> <p>Gruppen mit bestimmter Kategorie filtern</p> </div> </td> </tr> <tr> <th scope="row"> aktiv <div class="typedef-type">integer, optional</div> </th> <td> <div class="content"> <p>Aktive/Inaktive Gruppen filtern (1 = aktiv / 0 = inaktiv)</p> </div> </td> </tr> <tr> <th scope="row"> sort <div class="typedef-type">string, optional</div> </th> <td> <div class="content"> <p>Sortierung (Beispiel: <code>sort=projekt,-bezeichnung</code>)</p> <p>Verfügbare Felder: <code>name</code>, <code>art</code>, <code>kennziffer</code>, <code>projekt</code>, <code>kategorie</code>, <code>aktiv</code></p> </div> </td> </tr> <tr> <th scope="row"> include <div class="typedef-type">string, optional</div> </th> <td> <div class="content"> <p>Unter-Resourcen in Resource einbinden (Beispiel: <code>include=projekt</code>)</p> <p>Verfügbare Includes: <code>projekt</code></p> </div> </td> </tr> <tr> <th scope="row"> page <div class="typedef-type">integer , default: <code>1</code>, maximum: 1000, optional</div> </th> <td> <div class="content"> <p>Seitenzahl</p> </div> </td> </tr> <tr> <th scope="row"> items <div class="typedef-type">integer , default: <code>20</code>, maximum: 1000, optional</div> </th> <td> <div class="content"> <p>Anzahl der Ergebnisse pro Seite</p> </div> </td> </tr> </tbody> </table> </div> </div> </div> <!-- end of resource block for GET /v1/gruppen --> <!-- begin of resource block for POST /v1/gruppen --> <div id="v1_gru
|
|||
|
"name": "Support",
|
|||
|
"art": "gruppe",
|
|||
|
"kennziffer": "SUPPORT",
|
|||
|
"projekt": 0,
|
|||
|
"kategorie": 0,
|
|||
|
"aktiv": 1
|
|||
|
}
|
|||
|
</code></pre> </details> </li> </ul> </div> </div> </div> </div> <h5 class="title is-5">Response</h5> <div class="tabbable is-vertical" data-component="tabbable" data-tabbable-id="v1_gruppen_post_response"> <header class="tabs is-boxed"> <ul class="tabbable-tabs" data-tabbable-tabs="v1_gruppen_post_response"> <li> <a id="v1_gruppen_post_response_0" href="#v1_gruppen_post_response_0" data-tab="0"> <span class="status" data-code="201"></span> </a> </li> </ul> </header> <div class="tabbable-contents" data-tabbable-contents="v1_gruppen_post_response"> <div data-tab-content="0"> <div class="content"> <p>Request erfolgreich; Angelegte Gruppe wird zurückgeliefert</p> </div> <div class="tabbable" data-component="tabbable" data-tabbable-id="undefined_body"> <header class="tabs is-boxed"> <strong class="title is-6">Body</strong> <ul class="tabbable-tabs" data-tabbable-tabs="undefined_body"> <li> <a id="v1_gruppen_post_body_0" href="#v1_gruppen_post_body_0" data-tab="0"> application/json </a> </li> </ul> </header> <div class="tabbable-contents" data-tabbable-contents="undefined_body"> <div data-tab-content="0"> <h6 class="title is-6"></h6> <ul> <li> <details> <summary>Example</summary> <pre><code>{
|
|||
|
"success": true,
|
|||
|
"data": {
|
|||
|
"id": "11",
|
|||
|
"name": "Support",
|
|||
|
"art": "gruppe",
|
|||
|
"kennziffer": "SUPPORT",
|
|||
|
"internebemerkung": "",
|
|||
|
"projekt": "0",
|
|||
|
"kategorie": "0",
|
|||
|
"aktiv": "1"
|
|||
|
}
|
|||
|
}
|
|||
|
</code></pre> </details> </li> </ul> </div> </div> </div> </div> </div> </div> </div> </div> <!-- end of resource block for POST /v1/gruppen --> <!-- end of list of methods for /v1/gruppen --> <!-- list of methods for /v1/gruppen/{id} --> <span id="v1_gruppen__id_" class="group-resource-group-marker" data-spy data-spy-parent="v1_gruppen"></span> <!-- begin of resource block for GET /v1/gruppen/{id} --> <div id="v1_gruppen__id__get" class="group-endpoint" data-spy data-spy-parent="v1_gruppen__id_"> <header> <h4 class="title is-4 is-anchored"> Einzelne Gruppe abrufen <a class="anchor" href="#v1_gruppen__id__get">¶</a> <div class="subtitle is-6"> <strong class="method is-get">GET</strong> <span class="value">/v1/gruppen/{id}</span> </div> </h4> <div class="content"> <p>Einzelne Gruppe abrufen</p> <p>Permission: <code>view_group</code></p> </div> </header> <div> <h5 class="title is-5">Request</h5> <div class="indent"> <h6 class="title is-6">Path Variables</h6> <table class="table is-property-list"> <tbody> <tr> <th scope="row"> id <div class="typedef-type">integer, <strong class="typedef-required">required</strong></div> </th> <td> <div class="content"> <p>Gruppe-ID</p> </div> </td> </tr> </tbody> </table> </div> <h5 class="title is-5">Response</h5> <div class="tabbable is-vertical" data-component="tabbable" data-tabbable-id="v1_gruppen__id__get_response"> <header class="tabs is-boxed"> <ul class="tabbable-tabs" data-tabbable-tabs="v1_gruppen__id__get_response"> <li> <a id="v1_gruppen__id__get_response_0" href="#v1_gruppen__id__get_response_0" data-tab="0"> <span class="status" data-code="200"></span> </a> </li> <li> <a id="v1_gruppen__id__get_response_1" href="#v1_gruppen__id__get_response_1" data-tab="1"> <span class="status" data-code="404"></span> </a> </li> </ul> </header> <div class="tabbable-contents" data-tabbable-contents="v1_gruppen__id__get_response"> <div data-tab-content="0"> <div class="content"> <p>Request erfolgreich</p> </div> <div class="tabbable" data-component="tabbable" data-tabbable-id="undefined_body"> <header class="tabs is-boxed"> <strong class="title is-6">Body</strong> <ul class="tabbable-tabs" data-tabbable-tabs="undefined_body"> <li> <a id="v1_gruppen__id__get_body_0" href="#v1_gruppen__id__get_body_0" data-tab="0"> application/json </a> </li> </ul> </header> <div class="tabbable-contents" data-tabbable-contents="undefined_body"> <div data-tab-content="0"> <h6 class="title is-6"></h6> <ul> <li> <details> <summary>Example</summary> <pre><code>{
|
|||
|
"data": {
|
|||
|
"id": "1",
|
|||
|
"name": "Vertriebsleiter",
|
|||
|
"art": "vertreter",
|
|||
|
"kennziffer": "VETRL",
|
|||
|
"internebemerkung": "",
|
|||
|
"projekt": "0",
|
|||
|
"kategorie": "0",
|
|||
|
"aktiv": "1"
|
|||
|
}
|
|||
|
}
|
|||
|
</code></pre> </details> </li> </ul> </div> </div> </div> </div> <div data-tab-content="1"> <div class="content"> <p>Gruppe wurde nicht gefunden</p> </div> <div class="tabbable" data-component="tabbable" data-tabbable-id="undefined_body"> <header class="tabs is-boxed"> <strong class="title is-6">Body</strong> <ul class="tabbable-tabs" data-tabbable-tabs="undefined_body"> <li> <a id="v1_gruppen__id__get_body_0" href="#v1_gruppen__id__get_body_0" data-tab="0"> application/json </a> </li> </ul> </header> <div class="tabbable-contents" data-tabbable-contents="undefined_body"> <div data-tab-content="0"> <h6 class="title is-6"></h6> <ul> <li> <details> <summary>Example</summary> <pre><code>{
|
|||
|
"error": {
|
|||
|
"code": 7452,
|
|||
|
"http_code": 404,
|
|||
|
"message": "Resource not found",
|
|||
|
"href": "http://www.example.com/api/docs.html#error-7452"
|
|||
|
}
|
|||
|
}
|
|||
|
</code></pre> </details> </li> </ul> </div> </div> </div> </div> </div> </div> </div> </div> <!-- end of resource block for GET /v1/gruppen/{id} --> <!-- begin of resource block for PUT /v1/gruppen/{id} --> <div id="v1_gruppen__id__put" class="group-endpoint" data-spy data-spy-parent="v1_gruppen__id_"> <header> <h4 class="title is-4 is-anchored"> Gruppe bearbeiten <a class="anchor" href="#v1_gruppen__id__put">¶</a> <div class="subtitle is-6"> <strong class="method is-put">PUT</strong> <span class="value">/v1/gruppen/{id}</span> </div> </h4> <div class="content"> <p>Gruppe bearbeiten</p> <p>Permission: <code>update_group</code></p> </div> </header> <div> <h5 class="title is-5">Request</h5> <div class="indent"> <h6 class="title is-6">Path Variables</h6> <table class="table is-property-list"> <tbody> <tr> <th scope="row"> id <div class="typedef-type">integer, <strong class="typedef-required">required</strong></div> </th> <td> <div class="content"> <p>Gruppe-ID</p> </div> </td> </tr> </tbody> </table> <div class="tabbable" data-component="tabbable" data-tabbable-id="undefined_body"> <header class="tabs is-boxed"> <strong class="title is-6">Body</strong> <ul class="tabbable-tabs" data-tabbable-tabs="undefined_body"> <li> <a id="v1_gruppen__id__put_body_0" href="#v1_gruppen__id__put_body_0" data-tab="0"> application/json </a> </li> </ul> </header> <div class="tabbable-contents" data-tabbable-contents="undefined_body"> <div data-tab-content="0"> <h6 class="title is-6"></h6> <ul> <li> <details> <summary>Example</summary> <pre><code>{
|
|||
|
"name": "Support (inaktiv)",
|
|||
|
"art": "gruppe",
|
|||
|
"kennziffer": "SUPPORT",
|
|||
|
"aktiv": "0"
|
|||
|
}
|
|||
|
</code></pre> </details> </li> </ul> </div> </div> </div> </div> <h5 class="title is-5">Response</h5> <div class="tabbable is-vertical" data-component="tabbable" data-tabbable-id="v1_gruppen__id__put_response"> <header class="tabs is-boxed"> <ul class="tabbable-tabs" data-tabbable-tabs="v1_gruppen__id__put_response"> <li> <a id="v1_gruppen__id__put_response_0" href="#v1_gruppen__id__put_response_0" data-tab="0"> <span class="status" data-code="200"></span> </a> </li> </ul> </header> <div class="tabbable-contents" data-tabbable-contents="v1_gruppen__id__put_response"> <div data-tab-content="0"> <div class="content"> <p>Request erfolgreich; Aktualisierte Gruppe wird zurückgeliefert</p> </div> <div class="tabbable" data-component="tabbable" data-tabbable-id="undefined_body"> <header class="tabs is-boxed"> <strong class="title is-6">Body</strong> <ul class="tabbable-tabs" data-tabbable-tabs="undefined_body"> <li> <a id="v1_gruppen__id__put_body_0" href="#v1_gruppen__id__put_body_0" data-tab="0"> application/json </a> </li> </ul> </header> <div class="tabbable-contents" data-tabbable-contents="undefined_body"> <div data-tab-content="0"> <h6 class="title is-6"></h6> <ul> <li> <details> <summary>Example</summary> <pre><code>{
|
|||
|
"success": true,
|
|||
|
"data": {
|
|||
|
"id": "11",
|
|||
|
"name": "Support (inaktiv)",
|
|||
|
"art": "gruppe",
|
|||
|
"kennziffer": "SUPPORT",
|
|||
|
"internebemerkung": "",
|
|||
|
"projekt": "0",
|
|||
|
"kategorie": "0",
|
|||
|
"aktiv": "0"
|
|||
|
}
|
|||
|
}
|
|||
|
</code></pre> </details> </li> </ul> </div> </div> </div> </div> </div> </div> </div> </div> <!-- end of resource block for PUT /v1/gruppen/{id} --> <!-- end of list of methods for /v1/gruppen/{id} --> </div> <div id="v1_laender" class="group" data-spy data-spy-parent="__all_resources"> <header class="group-header"> <div class="group-title"> <h3 class="title is-3">/v1/laender</h3> </div> <div class="content"> <p>Länder anlegen, bearbeiten und abrufen</p> </div> </header> <!-- list of methods for /v1/laender --> <!-- begin of resource block for GET /v1/laender --> <div id="v1_laender_get" class="group-endpoint" data-spy data-spy-parent="v1_laender"> <header> <h4 class="title is-4 is-anchored"> Länderliste abrufen <a class="anchor" href="#v1_laender_get">¶</a> <div class="subtitle is-6"> <strong class="method is-get">GET</strong> <span class="value">/v1/laender</span> </div> </h4> <div class="content"> <p>Länderliste abrufen</p> <p>Permission: <code>list_countries</code></p> </div> </header> <div> <h5 class="title is-5">Request</h5> <div class="indent"> <h6 class="title is-6">Query Parameters</h6> <table class="table is-property-list"> <tbody> <tr> <th scope="row"> eu <div class="typedef-type">integer, optional</div> </th> <td> <div class="content"> <p>Länder innerhalb/außerhalb EU filtern (1 = EU / 0 = Nicht EU)</p> </div> </td> </tr> <tr> <th scope="row"> iso <div class="typedef-type">string, optional</div> </th> <td> <div class="content"> <p>Länder mit ISO-Code filtern (genaue Übereinstimmung)</p> </div> </td> </tr> <tr> <th scope="row"> bezeichnung_de <div class="typedef-type">string, optional</div> </th> <td> <div class="content"> <p>Länder mit bestimmter Bezeichnung suchen (ungefähre Übereinstimmung)</p> </div> </td> </tr> <tr> <th scope="row"> bezeichnung_en <div class="typedef-type">string, optional</div> </th> <td> <div class="content"> <p>Länder mit bestimmter Bezeichnung suchen (ungefähre Übereinstimmung)</p> </div> </td> </tr> <tr> <th scope="row"> id_ext <div class="typedef-type">integer, optional</div> </th> <td> <div class="content"> <p>Land mit externer ID filtern (genaue Übereinstimmung)</p> </div> </td> </tr> <tr> <th scope="row"> sort <div class="typedef-type">string, optional</div> </th> <td> <div class="content"> <p>Sortierung (Beispiel: <code>sort=iso,-bezeichnung</code>)</p> <p>Verfügbare Felder: <code>bezeichnung</code>, <code>bezeichnung_de</code>, <code>bezeichnung_en</code>, <code>iso</code> , <code>eu</code></p> </div> </td> </tr> <tr> <th scope="row"> page <div class="typedef-type">integer , default: <code>1</code>, maximum: 1000, optional</div> </th> <td> <div class="content"> <p>Seitenzahl</p> </div> </td> </tr> <tr> <th scope="row"> items <div class="typedef-type">integer , default: <code>20</code>, maximum: 1000, optional</div> </th> <td> <div class="content"> <p>Anzahl der Ergebnisse pro Seite</p> </div> </td> </tr> </tbody> </table> </div> </div> </div> <!-- end of resource block for GET /v1/laender --> <!-- begin of resource block for POST /v1/laender --> <div id="v1_laender_post" class="group-endpoint" data-spy data-spy-parent="v1_laender"> <header> <h4 class="title is-4 is-anchored"> Land anlegen <a class="anchor" href="#v1_laender_post">¶</a> <div class="subtitle is-6"> <strong class="method is-post">POST</strong> <span class="value">/v1/laender</span> </div> </h4> <div class="content"> <p>Land anlegen</p> <p>Permission: <code>create_countries</code></p> </div> </header> <div> <h5 class="title is-5">Request</h5> <div class="indent"> <div class="tabbable" data-component="tabbable" data-tabbable-id="undefined_body"> <header class="tabs is-boxed"> <strong class="title is-6">Body</strong> <ul class="tabbable-tabs" data-tabbable-tabs="undefined_body"> <li> <a id="v1_laender_post_body_0" href="#v1_laender_post_body_0" data-tab="0"> application/json </a> </li> </ul> </header> <div class="tabbable-contents" data-tabbable-contents="undefined_body"> <div data-tab-content="0"> <h6 class="title is-6">Properties (object)</h6> <table class="table is-property-list"> <tbody> <tr> <t
|
|||
|
"bezeichnung_de": "Republik Togo",
|
|||
|
"bezeichnung_en": "République Togolaise",
|
|||
|
"iso": "TG",
|
|||
|
"eu": 0
|
|||
|
}
|
|||
|
</code></pre> </details> </li> </ul> </div> </div> </div> </div> <h5 class="title is-5">Response</h5> <div class="tabbable is-vertical" data-component="tabbable" data-tabbable-id="v1_laender_post_response"> <header class="tabs is-boxed"> <ul class="tabbable-tabs" data-tabbable-tabs="v1_laender_post_response"> <li> <a id="v1_laender_post_response_0" href="#v1_laender_post_response_0" data-tab="0"> <span class="status" data-code="201"></span> </a> </li> </ul> </header> <div class="tabbable-contents" data-tabbable-contents="v1_laender_post_response"> <div data-tab-content="0"> <div class="content"> <p>Request erfolgreich; Angelegtes Land wird zurückgeliefert</p> </div> <div class="tabbable" data-component="tabbable" data-tabbable-id="undefined_body"> <header class="tabs is-boxed"> <strong class="title is-6">Body</strong> <ul class="tabbable-tabs" data-tabbable-tabs="undefined_body"> <li> <a id="v1_laender_post_body_0" href="#v1_laender_post_body_0" data-tab="0"> application/json </a> </li> </ul> </header> <div class="tabbable-contents" data-tabbable-contents="undefined_body"> <div data-tab-content="0"> <h6 class="title is-6"></h6> <ul> <li> <details> <summary>Example</summary> <pre><code>{
|
|||
|
"success": true,
|
|||
|
"data": {
|
|||
|
"id": "246",
|
|||
|
"iso": "TG",
|
|||
|
"bezeichnung_de": "Republik Togo",
|
|||
|
"bezeichnung_en": "République Togolaise",
|
|||
|
"eu": "0",
|
|||
|
"id_ext": null
|
|||
|
}
|
|||
|
}
|
|||
|
</code></pre> </details> </li> </ul> </div> </div> </div> </div> </div> </div> </div> </div> <!-- end of resource block for POST /v1/laender --> <!-- end of list of methods for /v1/laender --> <!-- list of methods for /v1/laender/{id} --> <span id="v1_laender__id_" class="group-resource-group-marker" data-spy data-spy-parent="v1_laender"></span> <!-- begin of resource block for GET /v1/laender/{id} --> <div id="v1_laender__id__get" class="group-endpoint" data-spy data-spy-parent="v1_laender__id_"> <header> <h4 class="title is-4 is-anchored"> Einzelnes Land abrufen <a class="anchor" href="#v1_laender__id__get">¶</a> <div class="subtitle is-6"> <strong class="method is-get">GET</strong> <span class="value">/v1/laender/{id}</span> </div> </h4> <div class="content"> <p>Einzelnes Land abrufen</p> <p>Permission: <code>view_country</code></p> </div> </header> <div> <h5 class="title is-5">Request</h5> <div class="indent"> <h6 class="title is-6">Path Variables</h6> <table class="table is-property-list"> <tbody> <tr> <th scope="row"> id <div class="typedef-type">integer, <strong class="typedef-required">required</strong></div> </th> <td> <div class="content"> <p>Land-ID</p> </div> </td> </tr> </tbody> </table> </div> <h5 class="title is-5">Response</h5> <div class="tabbable is-vertical" data-component="tabbable" data-tabbable-id="v1_laender__id__get_response"> <header class="tabs is-boxed"> <ul class="tabbable-tabs" data-tabbable-tabs="v1_laender__id__get_response"> <li> <a id="v1_laender__id__get_response_0" href="#v1_laender__id__get_response_0" data-tab="0"> <span class="status" data-code="200"></span> </a> </li> <li> <a id="v1_laender__id__get_response_1" href="#v1_laender__id__get_response_1" data-tab="1"> <span class="status" data-code="404"></span> </a> </li> </ul> </header> <div class="tabbable-contents" data-tabbable-contents="v1_laender__id__get_response"> <div data-tab-content="0"> <div class="content"> <p>Request erfolgreich</p> </div> <div class="tabbable" data-component="tabbable" data-tabbable-id="undefined_body"> <header class="tabs is-boxed"> <strong class="title is-6">Body</strong> <ul class="tabbable-tabs" data-tabbable-tabs="undefined_body"> <li> <a id="v1_laender__id__get_body_0" href="#v1_laender__id__get_body_0" data-tab="0"> application/json </a> </li> </ul> </header> <div class="tabbable-contents" data-tabbable-contents="undefined_body"> <div data-tab-content="0"> <h6 class="title is-6"></h6> <ul> <li> <details> <summary>Example</summary> <pre><code>{
|
|||
|
"data": {
|
|||
|
"id": "43",
|
|||
|
"iso": "DE",
|
|||
|
"bezeichnung_de": "Deutschland",
|
|||
|
"bezeichnung_en": "Germany",
|
|||
|
"eu": "1",
|
|||
|
"id_ext": null
|
|||
|
}
|
|||
|
}
|
|||
|
</code></pre> </details> </li> </ul> </div> </div> </div> </div> <div data-tab-content="1"> <div class="content"> <p>Land wurde nicht gefunden</p> </div> <div class="tabbable" data-component="tabbable" data-tabbable-id="undefined_body"> <header class="tabs is-boxed"> <strong class="title is-6">Body</strong> <ul class="tabbable-tabs" data-tabbable-tabs="undefined_body"> <li> <a id="v1_laender__id__get_body_0" href="#v1_laender__id__get_body_0" data-tab="0"> application/json </a> </li> </ul> </header> <div class="tabbable-contents" data-tabbable-contents="undefined_body"> <div data-tab-content="0"> <h6 class="title is-6"></h6> <ul> <li> <details> <summary>Example</summary> <pre><code>{
|
|||
|
"error": {
|
|||
|
"code": 7452,
|
|||
|
"http_code": 404,
|
|||
|
"message": "Resource not found",
|
|||
|
"href": "http://www.example.com/api/docs.html#error-7452"
|
|||
|
}
|
|||
|
}
|
|||
|
</code></pre> </details> </li> </ul> </div> </div> </div> </div> </div> </div> </div> </div> <!-- end of resource block for GET /v1/laender/{id} --> <!-- begin of resource block for PUT /v1/laender/{id} --> <div id="v1_laender__id__put" class="group-endpoint" data-spy data-spy-parent="v1_laender__id_"> <header> <h4 class="title is-4 is-anchored"> Land bearbeiten <a class="anchor" href="#v1_laender__id__put">¶</a> <div class="subtitle is-6"> <strong class="method is-put">PUT</strong> <span class="value">/v1/laender/{id}</span> </div> </h4> <div class="content"> <p>Land bearbeiten</p> <p>Permission: <code>edit_country</code></p> </div> </header> <div> <h5 class="title is-5">Request</h5> <div class="indent"> <h6 class="title is-6">Path Variables</h6> <table class="table is-property-list"> <tbody> <tr> <th scope="row"> id <div class="typedef-type">integer, <strong class="typedef-required">required</strong></div> </th> <td> <div class="content"> <p>Land-ID</p> </div> </td> </tr> </tbody> </table> <div class="tabbable" data-component="tabbable" data-tabbable-id="undefined_body"> <header class="tabs is-boxed"> <strong class="title is-6">Body</strong> <ul class="tabbable-tabs" data-tabbable-tabs="undefined_body"> <li> <a id="v1_laender__id__put_body_0" href="#v1_laender__id__put_body_0" data-tab="0"> application/json </a> </li> </ul> </header> <div class="tabbable-contents" data-tabbable-contents="undefined_body"> <div data-tab-content="0"> <h6 class="title is-6"></h6> <ul> <li> <details> <summary>Example</summary> <pre><code>{
|
|||
|
"bezeichnung_de": "Togo",
|
|||
|
"bezeichnung_en": "Republique Togolaise",
|
|||
|
"iso": "TX",
|
|||
|
"eu": 0
|
|||
|
}
|
|||
|
</code></pre> </details> </li> </ul> </div> </div> </div> </div> <h5 class="title is-5">Response</h5> <div class="tabbable is-vertical" data-component="tabbable" data-tabbable-id="v1_laender__id__put_response"> <header class="tabs is-boxed"> <ul class="tabbable-tabs" data-tabbable-tabs="v1_laender__id__put_response"> <li> <a id="v1_laender__id__put_response_0" href="#v1_laender__id__put_response_0" data-tab="0"> <span class="status" data-code="200"></span> </a> </li> </ul> </header> <div class="tabbable-contents" data-tabbable-contents="v1_laender__id__put_response"> <div data-tab-content="0"> <div class="content"> <p>Request erfolgreich; Aktualisiertes Land wird zurückgeliefert</p> </div> <div class="tabbable" data-component="tabbable" data-tabbable-id="undefined_body"> <header class="tabs is-boxed"> <strong class="title is-6">Body</strong> <ul class="tabbable-tabs" data-tabbable-tabs="undefined_body"> <li> <a id="v1_laender__id__put_body_0" href="#v1_laender__id__put_body_0" data-tab="0"> application/json </a> </li> </ul> </header> <div class="tabbable-contents" data-tabbable-contents="undefined_body"> <div data-tab-content="0"> <h6 class="title is-6"></h6> <ul> <li> <details> <summary>Example</summary> <pre><code>{
|
|||
|
"success": true,
|
|||
|
"data": {
|
|||
|
"id": "246",
|
|||
|
"iso": "TX",
|
|||
|
"bezeichnung_de": "Togo",
|
|||
|
"bezeichnung_en": "Republique Togolaise",
|
|||
|
"eu": "0",
|
|||
|
"id_ext": null
|
|||
|
}
|
|||
|
}
|
|||
|
</code></pre> </details> </li> </ul> </div> </div> </div> </div> </div> </div> </div> </div> <!-- end of resource block for PUT /v1/laender/{id} --> <!-- end of list of methods for /v1/laender/{id} --> </div> <div id="v1_lagercharge" class="group" data-spy data-spy-parent="__all_resources"> <header class="group-header"> <div class="group-title"> <h3 class="title is-3">/v1/lagercharge</h3> </div> <div class="content"> <p>Lagercharge abrufen</p> </div> </header> <!-- list of methods for /v1/lagercharge --> <!-- begin of resource block for GET /v1/lagercharge --> <div id="v1_lagercharge_get" class="group-endpoint" data-spy data-spy-parent="v1_lagercharge"> <header> <h4 class="title is-4 is-anchored"> Lagercharge abrufen <a class="anchor" href="#v1_lagercharge_get">¶</a> <div class="subtitle is-6"> <strong class="method is-get">GET</strong> <span class="value">/v1/lagercharge</span> </div> </h4> <div class="content"> <p>Lagercharge abrufen</p> <p>Permission: <code>view_storage_batch</code></p> </div> </header> <div> <h5 class="title is-5">Request</h5> <div class="indent"> <h6 class="title is-6">Query Parameters</h6> <table class="table is-property-list"> <tbody> <tr> <th scope="row"> artikelnummer <div class="typedef-type">string, optional</div> </th> <td> <div class="content"> <p>Suche nach bestimmter Artikelnummer (ungefähre Übereinstimmung)</p> </div> </td> </tr> <tr> <th scope="row"> artikelnummer_equals <div class="typedef-type">string, optional</div> </th> <td> <div class="content"> <p>Suche nach bestimmter Artikelnummer (genaue Übereinstimmung)</p> </div> </td> </tr> <tr> <th scope="row"> artikelnummer_startswith <div class="typedef-type">string, optional</div> </th> <td> <div class="content"> <p>Suche nach bestimmter Artikelnummer (Übereinstimmung am Anfang)</p> </div> </td> </tr> <tr> <th scope="row"> artikelnummer_endswith <div class="typedef-type">string, optional</div> </th> <td> <div class="content"> <p>Suche nach bestimmter Artikelnummer (Übereinstimmung am Ende)</p> </div> </td> </tr> <tr> <th scope="row"> artikel <div class="typedef-type">integer, optional</div> </th> <td> <div class="content"> <p>Suche nach bestimmter Artikel-ID (genaue Übereinstimmung)</p> </div> </td> </tr> <tr> <th scope="row"> lagerplatzbezeichnung <div class="typedef-type">string, optional</div> </th> <td> <div class="content"> <p>Suche nach bestimmter Lagerplatzbezeichnung (ungefähre Übereinstimmung)</p> </div> </td> </tr> <tr> <th scope="row"> lagerplatzbezeichnung_equals <div class="typedef-type">string, optional</div> </th> <td> <div class="content"> <p>Suche nach bestimmter Lagerplatzbezeichnung (genaue Übereinstimmung)</p> </div> </td> </tr> <tr> <th scope="row"> lagerplatzbezeichnung_startswith <div class="typedef-type">string, optional</div> </th> <td> <div class="content"> <p>Suche nach bestimmter Lagerplatzbezeichnung (Übereinstimmung am Anfang)</p> </div> </td> </tr> <tr> <th scope="row"> lagerplatzbezeichnung_endswith <div class="typedef-type">string, optional</div> </th> <td> <div class="content"> <p>Suche nach bestimmter Lagerplatzbezeichnung (Übereinstimmung am Ende)</p> </div> </td> </tr> <tr> <th scope="row"> lagerplatz <div class="typedef-type">integer, optional</div> </th> <td> <div class="content"> <p>Suche nach bestimmter Lagerplatz-ID (genaue Übereinstimmung)</p> </div> </td> </tr> <tr> <th scope="row"> charge <div class="typedef-type">integer, optional</div> </th> <td> <div class="content"> <p>Suche nach bestimmter Charge (ungefähre Übereinstimmung)</p> </div> </td> </tr> <tr> <th scope="row"> charge_equals <div class="typedef-type">string, optional</div> </th> <td> <div class="content"> <p>Suche nach bestimmter Charge (genaue Übereinstimmung)</p> </div> </td> </tr> <tr> <th scope="row"> charge_startswith <div class="typedef-type">string, optional</div> </th> <td> <div class="content"> <p>Suche nach bestimmter Charge (Übereinstimmung am Anfang)</p> </div> </td> </tr> <tr> <th scope="row"> charge_endswith <div class="typedef-type">string, optional</div> </th> <td> <div class="content"> <p>Suche na
|
|||
|
"data": [
|
|||
|
{
|
|||
|
"artikel": 1,
|
|||
|
"artikelnummer": "700001",
|
|||
|
"lagerplatz": 1,
|
|||
|
"lagerplatzbezeichnung": "HL001A",
|
|||
|
"charge": "111111",
|
|||
|
"datum": "2018-12-21",
|
|||
|
"menge": "200.0000",
|
|||
|
"internebemerkung": ""
|
|||
|
},
|
|||
|
{
|
|||
|
"artikel": 1,
|
|||
|
"artikelnummer": "700001",
|
|||
|
"lagerplatz": 2,
|
|||
|
"lagerplatzbezeichnung": "HL001B",
|
|||
|
"charge": "222222",
|
|||
|
"datum": "2018-12-21",
|
|||
|
"menge": "300.0000",
|
|||
|
"internebemerkung": ""
|
|||
|
}
|
|||
|
],
|
|||
|
"pagination": {
|
|||
|
"items_per_page": 20,
|
|||
|
"items_current": 2,
|
|||
|
"items_total": 2,
|
|||
|
"page_current": 1,
|
|||
|
"page_last": 1
|
|||
|
}
|
|||
|
}
|
|||
|
</code></pre> </details> </li> </ul> </div> </div> </div> </div> </div> </div> </div> </div> <!-- end of resource block for GET /v1/lagercharge --> <!-- end of list of methods for /v1/lagercharge --> </div> <div id="v1_lagermhd" class="group" data-spy data-spy-parent="__all_resources"> <header class="group-header"> <div class="group-title"> <h3 class="title is-3">/v1/lagermhd</h3> </div> <div class="content"> <p>Lager-Mindesthaltbarkeitdatum abrufen</p> </div> </header> <!-- list of methods for /v1/lagermhd --> <!-- begin of resource block for GET /v1/lagermhd --> <div id="v1_lagermhd_get" class="group-endpoint" data-spy data-spy-parent="v1_lagermhd"> <header> <h4 class="title is-4 is-anchored"> Lager-Mindesthaltbarkeitdatum abrufen <a class="anchor" href="#v1_lagermhd_get">¶</a> <div class="subtitle is-6"> <strong class="method is-get">GET</strong> <span class="value">/v1/lagermhd</span> </div> </h4> <div class="content"> <p>Lager-Mindesthaltbarkeitdatum abrufen</p> <p>Permission: <code>view_storage_best_before</code></p> </div> </header> <div> <h5 class="title is-5">Request</h5> <div class="indent"> <h6 class="title is-6">Query Parameters</h6> <table class="table is-property-list"> <tbody> <tr> <th scope="row"> artikelnummer <div class="typedef-type">string, optional</div> </th> <td> <div class="content"> <p>Suche nach bestimmter Artikelnummer (ungefähre Übereinstimmung)</p> </div> </td> </tr> <tr> <th scope="row"> artikelnummer_equals <div class="typedef-type">string, optional</div> </th> <td> <div class="content"> <p>Suche nach bestimmter Artikelnummer (genaue Übereinstimmung)</p> </div> </td> </tr> <tr> <th scope="row"> artikelnummer_startswith <div class="typedef-type">string, optional</div> </th> <td> <div class="content"> <p>Suche nach bestimmter Artikelnummer (Übereinstimmung am Anfang)</p> </div> </td> </tr> <tr> <th scope="row"> artikelnummer_endswith <div class="typedef-type">string, optional</div> </th> <td> <div class="content"> <p>Suche nach bestimmter Artikelnummer (Übereinstimmung am Ende)</p> </div> </td> </tr> <tr> <th scope="row"> artikel <div class="typedef-type">integer, optional</div> </th> <td> <div class="content"> <p>Suche nach bestimmter Artikel-ID (genaue Übereinstimmung)</p> </div> </td> </tr> <tr> <th scope="row"> lagerplatzbezeichnung <div class="typedef-type">string, optional</div> </th> <td> <div class="content"> <p>Suche nach bestimmter Lagerplatzbezeichnung (ungefähre Übereinstimmung)</p> </div> </td> </tr> <tr> <th scope="row"> lagerplatzbezeichnung_equals <div class="typedef-type">string, optional</div> </th> <td> <div class="content"> <p>Suche nach bestimmter Lagerplatzbezeichnung (genaue Übereinstimmung)</p> </div> </td> </tr> <tr> <th scope="row"> lagerplatzbezeichnung_startswith <div class="typedef-type">string, optional</div> </th> <td> <div class="content"> <p>Suche nach bestimmter Lagerplatzbezeichnung (Übereinstimmung am Anfang)</p> </div> </td> </tr> <tr> <th scope="row"> lagerplatzbezeichnung_endswith <div class="typedef-type">string, optional</div> </th> <td> <div class="content"> <p>Suche nach bestimmter Lagerplatzbezeichnung (Übereinstimmung am Ende)</p> </div> </td> </tr> <tr> <th scope="row"> lagerplatz <div class="typedef-type">integer, optional</div> </th> <td> <div class="content"> <p>Suche nach bestimmter Lagerplatz-ID (genaue Übereinstimmung)</p> </div> </td> </tr> <tr> <th scope="row"> charge <div class="typedef-type">integer, optional</div> </th> <td> <div class="content"> <p>Suche nach bestimmter Charge (ungefähre Übereinstimmung)</p> </div> </td> </tr> <tr> <th scope="row"> charge_equals <div class="typedef-type">string, optional</div> </th> <td> <div class="content"> <p>Suche nach bestimmter Charge (genaue Übereinstimmung)</p> </div> </td> </tr> <tr> <th scope="row"> charge_startswith <div class="typedef-type">string, optional</div> </th> <td> <div class="content"> <p>Suche nach bestimmter Charge (Übereinstimmung am Anfang)</p> </div> </td> </tr> <tr> <th scope="row"> charge_endswith <div class="typedef-type">string, optional</div> </th> <td>
|
|||
|
"data": [
|
|||
|
{
|
|||
|
"artikel": 1,
|
|||
|
"artikelnummer": "700001",
|
|||
|
"lagerplatz": 1,
|
|||
|
"lagerplatzbezeichnung": "HL001A",
|
|||
|
"charge": "444444",
|
|||
|
"mhddatum": "2019-12-24",
|
|||
|
"datum": "2018-12-21",
|
|||
|
"menge": "300.0000",
|
|||
|
"internebemerkung": "Charge und / oder MHD angelegt"
|
|||
|
},
|
|||
|
{
|
|||
|
"artikel": 1,
|
|||
|
"artikelnummer": "700001",
|
|||
|
"lagerplatz": 4,
|
|||
|
"lagerplatzbezeichnung": "HL002",
|
|||
|
"charge": "555555",
|
|||
|
"mhddatum": "2019-12-23",
|
|||
|
"datum": "2018-12-21",
|
|||
|
"menge": "289.0000",
|
|||
|
"internebemerkung": "Produktion 400003 Einlagern"
|
|||
|
}
|
|||
|
],
|
|||
|
"pagination": {
|
|||
|
"items_per_page": 20,
|
|||
|
"items_current": 2,
|
|||
|
"items_total": 2,
|
|||
|
"page_current": 1,
|
|||
|
"page_last": 1
|
|||
|
}
|
|||
|
}
|
|||
|
</code></pre> </details> </li> </ul> </div> </div> </div> </div> </div> </div> </div> </div> <!-- end of resource block for GET /v1/lagermhd --> <!-- end of list of methods for /v1/lagermhd --> </div> <div id="v1_lieferadressen" class="group" data-spy data-spy-parent="__all_resources"> <header class="group-header"> <div class="group-title"> <h3 class="title is-3">/v1/lieferadressen</h3> </div> <div class="content"> <p>Lieferadressen anlegen, bearbeiten und abrufen</p> </div> </header> <!-- list of methods for /v1/lieferadressen --> <!-- begin of resource block for GET /v1/lieferadressen --> <div id="v1_lieferadressen_get" class="group-endpoint" data-spy data-spy-parent="v1_lieferadressen"> <header> <h4 class="title is-4 is-anchored"> Lieferadressen abrufen <a class="anchor" href="#v1_lieferadressen_get">¶</a> <div class="subtitle is-6"> <strong class="method is-get">GET</strong> <span class="value">/v1/lieferadressen</span> </div> </h4> <div class="content"> <p>Lieferadressen abrufen</p> <p>Permission: <code>list_delivery_addresses</code></p> </div> </header> <div> <h5 class="title is-5">Request</h5> <div class="indent"> <h6 class="title is-6">Query Parameters</h6> <table class="table is-property-list"> <tbody> <tr> <th scope="row"> adresse <div class="typedef-type">integer, optional</div> </th> <td> <div class="content"> <p>Suche nach allen Lieferadressen einer bestimmten Hauptadresse</p> </div> </td> </tr> <tr> <th scope="row"> standardlieferadresse <div class="typedef-type">integer, optional</div> </th> <td> <div class="content"> <p>Ist Standard-Lieferadresse? (0 = Keine Standard-Lieferadresse / 1 = Ist Standard-Lieferadresse)</p> </div> </td> </tr> <tr> <th scope="row"> typ <div class="typedef-type">string, optional</div> </th> <td> <div class="content"> <p>Nach bestimmten Adresstyp filtern (genaue Übereinstimmung)</p> <p>Mögliche Werte: Siehe Adresstyp-Endpunkt: <a href="#adresstyp">GET /adresstyp</a>.</p> </div> </td> </tr> <tr> <th scope="row"> name <div class="typedef-type">string, optional</div> </th> <td> <div class="content"> <p>Suche nach Name (ungefähre Übereinstimmung)</p> </div> </td> </tr> <tr> <th scope="row"> name_equals <div class="typedef-type">string, optional</div> </th> <td> <div class="content"> <p>Suche nach Name (genaue Übereinstimmung)</p> </div> </td> </tr> <tr> <th scope="row"> name_startswith <div class="typedef-type">string, optional</div> </th> <td> <div class="content"> <p>Suche nach Name (Übereinstimmung am Anfang)</p> </div> </td> </tr> <tr> <th scope="row"> name_endswith <div class="typedef-type">string, optional</div> </th> <td> <div class="content"> <p>Suche nach Name (Übereinstimmung am Ende)</p> </div> </td> </tr> <tr> <th scope="row"> land <div class="typedef-type">string, optional</div> </th> <td> <div class="content"> <p>Suche nach Lieferadressen aus einem bestimmten Land (zweistelliger ISO-Code)</p> </div> </td> </tr> <tr> <th scope="row"> id_ext <div class="typedef-type">integer, optional</div> </th> <td> <div class="content"> <p>Lieferadresse mit externer ID filtern (genaue Übereinstimmung)</p> </div> </td> </tr> <tr> <th scope="row"> sort <div class="typedef-type">string, optional</div> </th> <td> <div class="content"> <p>Sortierung (Beispiel: <code>sort=plz,-land</code>)</p> <p>Verfügbare Felder: <code>typ</code>, <code>name</code>, <code>plz</code>, <code>land</code></p> </div> </td> </tr> <tr> <th scope="row"> page <div class="typedef-type">integer , default: <code>1</code>, maximum: 1000, optional</div> </th> <td> <div class="content"> <p>Seitenzahl</p> </div> </td> </tr> <tr> <th scope="row"> items <div class="typedef-type">integer , default: <code>20</code>, maximum: 1000, optional</div> </th> <td> <div class="content"> <p>Anzahl der Ergebnisse pro Seite</p> </div> </td> </tr> </tbody> </table> </div> </div> </div> <!-- end of resource block for GET /v1/lieferadressen --> <!-- begin of resource block for POST /v1/lieferadressen --> <div id="v1_lieferadressen_post" class="group-endpoint" data-spy data-spy-parent="v1_lieferadressen"> <header> <h4 class="title
|
|||
|
"adresse": 5,
|
|||
|
"typ": "herr",
|
|||
|
"name": "Max Mustermann",
|
|||
|
"abteilung": "Musterabteilung",
|
|||
|
"strasse": "Musterweg",
|
|||
|
"ort": "Musterort",
|
|||
|
"plz": "12345",
|
|||
|
"land": "DE",
|
|||
|
"telefon": "0123-456789-9",
|
|||
|
"telefax": "0123-456789-0",
|
|||
|
"email": "max@mustermann.de",
|
|||
|
"standardlieferadresse": 1,
|
|||
|
"ust_befreit": 0
|
|||
|
}
|
|||
|
</code></pre> </details> </li> </ul> </div> </div> </div> </div> <h5 class="title is-5">Response</h5> <div class="tabbable is-vertical" data-component="tabbable" data-tabbable-id="v1_lieferadressen_post_response"> <header class="tabs is-boxed"> <ul class="tabbable-tabs" data-tabbable-tabs="v1_lieferadressen_post_response"> <li> <a id="v1_lieferadressen_post_response_0" href="#v1_lieferadressen_post_response_0" data-tab="0"> <span class="status" data-code="201"></span> </a> </li> </ul> </header> <div class="tabbable-contents" data-tabbable-contents="v1_lieferadressen_post_response"> <div data-tab-content="0"> <div class="content"> <p>Request erfolgreich; Angelegte Lieferadresse wird zurückgeliefert</p> </div> <div class="tabbable" data-component="tabbable" data-tabbable-id="undefined_body"> <header class="tabs is-boxed"> <strong class="title is-6">Body</strong> <ul class="tabbable-tabs" data-tabbable-tabs="undefined_body"> <li> <a id="v1_lieferadressen_post_body_0" href="#v1_lieferadressen_post_body_0" data-tab="0"> application/json </a> </li> </ul> </header> <div class="tabbable-contents" data-tabbable-contents="undefined_body"> <div data-tab-content="0"> <h6 class="title is-6"></h6> <ul> <li> <details> <summary>Example</summary> <pre><code>{
|
|||
|
"success": true,
|
|||
|
"data": {
|
|||
|
"id": 23,
|
|||
|
"typ": "herr",
|
|||
|
"name": "Max Mustermann",
|
|||
|
"abteilung": "Musterabteilung",
|
|||
|
"...": "Ausgabe gekürzt",
|
|||
|
"standardlieferadresse": 1,
|
|||
|
"ust_befreit": 0,
|
|||
|
"id_ext": null
|
|||
|
}
|
|||
|
}
|
|||
|
</code></pre> </details> </li> </ul> </div> </div> </div> </div> </div> </div> </div> </div> <!-- end of resource block for POST /v1/lieferadressen --> <!-- end of list of methods for /v1/lieferadressen --> <!-- list of methods for /v1/lieferadressen/{id} --> <span id="v1_lieferadressen__id_" class="group-resource-group-marker" data-spy data-spy-parent="v1_lieferadressen"></span> <!-- begin of resource block for GET /v1/lieferadressen/{id} --> <div id="v1_lieferadressen__id__get" class="group-endpoint" data-spy data-spy-parent="v1_lieferadressen__id_"> <header> <h4 class="title is-4 is-anchored"> Einzelne Lieferadresse abrufen <a class="anchor" href="#v1_lieferadressen__id__get">¶</a> <div class="subtitle is-6"> <strong class="method is-get">GET</strong> <span class="value">/v1/lieferadressen/{id}</span> </div> </h4> <div class="content"> <p>Einzelne Lieferadresse abrufen</p> <p>Permission: <code>view_delivery_address</code></p> </div> </header> <div> <h5 class="title is-5">Request</h5> <div class="indent"> <h6 class="title is-6">Path Variables</h6> <table class="table is-property-list"> <tbody> <tr> <th scope="row"> id <div class="typedef-type">integer, <strong class="typedef-required">required</strong></div> </th> <td> <div class="content"> <p>Lieferadressen-ID</p> </div> </td> </tr> </tbody> </table> </div> <h5 class="title is-5">Response</h5> <div class="tabbable is-vertical" data-component="tabbable" data-tabbable-id="v1_lieferadressen__id__get_response"> <header class="tabs is-boxed"> <ul class="tabbable-tabs" data-tabbable-tabs="v1_lieferadressen__id__get_response"> <li> <a id="v1_lieferadressen__id__get_response_0" href="#v1_lieferadressen__id__get_response_0" data-tab="0"> <span class="status" data-code="200"></span> </a> </li> <li> <a id="v1_lieferadressen__id__get_response_1" href="#v1_lieferadressen__id__get_response_1" data-tab="1"> <span class="status" data-code="404"></span> </a> </li> </ul> </header> <div class="tabbable-contents" data-tabbable-contents="v1_lieferadressen__id__get_response"> <div data-tab-content="0"> <div class="content"> <p>Request erfolgreich</p> </div> <div class="tabbable" data-component="tabbable" data-tabbable-id="undefined_body"> <header class="tabs is-boxed"> <strong class="title is-6">Body</strong> <ul class="tabbable-tabs" data-tabbable-tabs="undefined_body"> <li> <a id="v1_lieferadressen__id__get_body_0" href="#v1_lieferadressen__id__get_body_0" data-tab="0"> application/json </a> </li> </ul> </header> <div class="tabbable-contents" data-tabbable-contents="undefined_body"> <div data-tab-content="0"> <h6 class="title is-6"></h6> <ul> <li> <details> <summary>Example</summary> <pre><code>{
|
|||
|
"success": true,
|
|||
|
"data": {
|
|||
|
"id": 1,
|
|||
|
"typ": "herr",
|
|||
|
"name": "Max Mustermann",
|
|||
|
"abteilung": "Musterabteilung",
|
|||
|
"...": "Ausgabe gekürzt",
|
|||
|
"standardlieferadresse": 1,
|
|||
|
"ust_befreit": 0,
|
|||
|
"id_ext": null
|
|||
|
}
|
|||
|
}
|
|||
|
</code></pre> </details> </li> </ul> </div> </div> </div> </div> <div data-tab-content="1"> <div class="content"> <p>Lieferadresse wurde nicht gefunden</p> </div> <div class="tabbable" data-component="tabbable" data-tabbable-id="undefined_body"> <header class="tabs is-boxed"> <strong class="title is-6">Body</strong> <ul class="tabbable-tabs" data-tabbable-tabs="undefined_body"> <li> <a id="v1_lieferadressen__id__get_body_0" href="#v1_lieferadressen__id__get_body_0" data-tab="0"> application/json </a> </li> </ul> </header> <div class="tabbable-contents" data-tabbable-contents="undefined_body"> <div data-tab-content="0"> <h6 class="title is-6"></h6> <ul> <li> <details> <summary>Example</summary> <pre><code>{
|
|||
|
"error": {
|
|||
|
"code": 7452,
|
|||
|
"http_code": 404,
|
|||
|
"message": "Resource not found",
|
|||
|
"href": "http://www.example.com/api/docs.html#error-7452"
|
|||
|
}
|
|||
|
}
|
|||
|
</code></pre> </details> </li> </ul> </div> </div> </div> </div> </div> </div> </div> </div> <!-- end of resource block for GET /v1/lieferadressen/{id} --> <!-- begin of resource block for PUT /v1/lieferadressen/{id} --> <div id="v1_lieferadressen__id__put" class="group-endpoint" data-spy data-spy-parent="v1_lieferadressen__id_"> <header> <h4 class="title is-4 is-anchored"> Lieferadresse bearbeiten <a class="anchor" href="#v1_lieferadressen__id__put">¶</a> <div class="subtitle is-6"> <strong class="method is-put">PUT</strong> <span class="value">/v1/lieferadressen/{id}</span> </div> </h4> <div class="content"> <p>Lieferadresse bearbeiten</p> <p>Permission: <code>edit_delivery_address</code></p> </div> </header> <div> <h5 class="title is-5">Request</h5> <div class="indent"> <h6 class="title is-6">Path Variables</h6> <table class="table is-property-list"> <tbody> <tr> <th scope="row"> id <div class="typedef-type">integer, <strong class="typedef-required">required</strong></div> </th> <td> <div class="content"> <p>Lieferadressen-ID</p> </div> </td> </tr> </tbody> </table> <div class="tabbable" data-component="tabbable" data-tabbable-id="undefined_body"> <header class="tabs is-boxed"> <strong class="title is-6">Body</strong> <ul class="tabbable-tabs" data-tabbable-tabs="undefined_body"> <li> <a id="v1_lieferadressen__id__put_body_0" href="#v1_lieferadressen__id__put_body_0" data-tab="0"> application/json </a> </li> </ul> </header> <div class="tabbable-contents" data-tabbable-contents="undefined_body"> <div data-tab-content="0"> <h6 class="title is-6"></h6> <ul> <li> <details> <summary>Example</summary> <pre><code>{
|
|||
|
"typ": "firma",
|
|||
|
"name": "Mustermann Gmbh"
|
|||
|
}
|
|||
|
</code></pre> </details> </li> </ul> </div> </div> </div> </div> <h5 class="title is-5">Response</h5> <div class="tabbable is-vertical" data-component="tabbable" data-tabbable-id="v1_lieferadressen__id__put_response"> <header class="tabs is-boxed"> <ul class="tabbable-tabs" data-tabbable-tabs="v1_lieferadressen__id__put_response"> <li> <a id="v1_lieferadressen__id__put_response_0" href="#v1_lieferadressen__id__put_response_0" data-tab="0"> <span class="status" data-code="200"></span> </a> </li> </ul> </header> <div class="tabbable-contents" data-tabbable-contents="v1_lieferadressen__id__put_response"> <div data-tab-content="0"> <div class="content"> <p>Request erfolgreich; Aktualisierte Lieferadresse wird zurückgeliefert</p> </div> <div class="tabbable" data-component="tabbable" data-tabbable-id="undefined_body"> <header class="tabs is-boxed"> <strong class="title is-6">Body</strong> <ul class="tabbable-tabs" data-tabbable-tabs="undefined_body"> <li> <a id="v1_lieferadressen__id__put_body_0" href="#v1_lieferadressen__id__put_body_0" data-tab="0"> application/json </a> </li> </ul> </header> <div class="tabbable-contents" data-tabbable-contents="undefined_body"> <div data-tab-content="0"> <h6 class="title is-6"></h6> <ul> <li> <details> <summary>Example</summary> <pre><code>{
|
|||
|
"success": true,
|
|||
|
"data": {
|
|||
|
"id": 1,
|
|||
|
"typ": "firma",
|
|||
|
"name": "Mustermann Gmbh",
|
|||
|
"abteilung": "Musterabteilung",
|
|||
|
"...": "Ausgabe gekürzt",
|
|||
|
"standardlieferadresse": 1,
|
|||
|
"ust_befreit": 0,
|
|||
|
"id_ext": null
|
|||
|
}
|
|||
|
}
|
|||
|
</code></pre> </details> </li> </ul> </div> </div> </div> </div> </div> </div> </div> </div> <!-- end of resource block for PUT /v1/lieferadressen/{id} --> <!-- begin of resource block for DELETE /v1/lieferadressen/{id} --> <div id="v1_lieferadressen__id__delete" class="group-endpoint" data-spy data-spy-parent="v1_lieferadressen__id_"> <header> <h4 class="title is-4 is-anchored"> Lieferadresse löschen <a class="anchor" href="#v1_lieferadressen__id__delete">¶</a> <div class="subtitle is-6"> <strong class="method is-delete">DELETE</strong> <span class="value">/v1/lieferadressen/{id}</span> </div> </h4> <div class="content"> <p>Lieferadresse löschen</p> <p>Permission: <code>delete_delivery_address</code></p> </div> </header> <div> <h5 class="title is-5">Request</h5> <div class="indent"> <h6 class="title is-6">Path Variables</h6> <table class="table is-property-list"> <tbody> <tr> <th scope="row"> id <div class="typedef-type">integer, <strong class="typedef-required">required</strong></div> </th> <td> <div class="content"> <p>Lieferadressen-ID</p> </div> </td> </tr> </tbody> </table> </div> <h5 class="title is-5">Response</h5> <div class="tabbable is-vertical" data-component="tabbable" data-tabbable-id="v1_lieferadressen__id__delete_response"> <header class="tabs is-boxed"> <ul class="tabbable-tabs" data-tabbable-tabs="v1_lieferadressen__id__delete_response"> <li> <a id="v1_lieferadressen__id__delete_response_0" href="#v1_lieferadressen__id__delete_response_0" data-tab="0"> <span class="status" data-code="200"></span> </a> </li> </ul> </header> <div class="tabbable-contents" data-tabbable-contents="v1_lieferadressen__id__delete_response"> <div data-tab-content="0"> <div class="content"> <p>Request erfolgreich; ID der gelöschten Lieferadresse wird zurückgeliefert</p> </div> <div class="tabbable" data-component="tabbable" data-tabbable-id="undefined_body"> <header class="tabs is-boxed"> <strong class="title is-6">Body</strong> <ul class="tabbable-tabs" data-tabbable-tabs="undefined_body"> <li> <a id="v1_lieferadressen__id__delete_body_0" href="#v1_lieferadressen__id__delete_body_0" data-tab="0"> application/json </a> </li> </ul> </header> <div class="tabbable-contents" data-tabbable-contents="undefined_body"> <div data-tab-content="0"> <h6 class="title is-6"></h6> <ul> <li> <details> <summary>Example</summary> <pre><code>{
|
|||
|
"success": true,
|
|||
|
"data": {
|
|||
|
"id": 1
|
|||
|
}
|
|||
|
}
|
|||
|
</code></pre> </details> </li> </ul> </div> </div> </div> </div> </div> </div> </div> </div> <!-- end of resource block for DELETE /v1/lieferadressen/{id} --> <!-- end of list of methods for /v1/lieferadressen/{id} --> </div> <div id="v1_reports" class="group" data-spy data-spy-parent="__all_resources"> <header class="group-header"> <div class="group-title"> <h3 class="title is-3">/v1/reports</h3> </div> <div class="content"> <p>Berichte (neues Modul) abrufen</p> </div> </header> <!-- list of methods for /v1/reports --> <!-- end of list of methods for /v1/reports --> <!-- list of methods for /v1/reports/{id}/download --> <span id="v1_reports__id__download" class="group-resource-group-marker" data-spy data-spy-parent="v1_reports"></span> <!-- begin of resource block for GET /v1/reports/{id}/download --> <div id="v1_reports__id__download_get" class="group-endpoint" data-spy data-spy-parent="v1_reports__id__download"> <header> <h4 class="title is-4 is-anchored"> Einzelnen Bericht herunterladen <a class="anchor" href="#v1_reports__id__download_get">¶</a> <div class="subtitle is-6"> <strong class="method is-get">GET</strong> <span class="value">/v1/reports/{id}/download</span> </div> </h4> <div class="content"> <p>Einzelnen Bericht herunterladen</p> </div> </header> <div> <h5 class="title is-5">Request</h5> <div class="indent"> <h6 class="title is-6">Path Variables</h6> <table class="table is-property-list"> <tbody> <tr> <th scope="row"> id <div class="typedef-type">integer, <strong class="typedef-required">required</strong></div> </th> <td> <div class="content"> <p>Bericht-ID</p> </div> </td> </tr> </tbody> </table> <h6 class="title is-6">Query Parameters</h6> <table class="table is-property-list"> <tbody> <tr> <th scope="row"> parameter <div class="typedef-type">any, optional</div> </th> <td> <div class="content"> <p>Jeder Parameter, der in der Abfrage des Berichts vorkommt.</p> </div> </td> </tr> </tbody> </table> </div> <h5 class="title is-5">Response</h5> <div class="tabbable is-vertical" data-component="tabbable" data-tabbable-id="v1_reports__id__download_get_response"> <header class="tabs is-boxed"> <ul class="tabbable-tabs" data-tabbable-tabs="v1_reports__id__download_get_response"> <li> <a id="v1_reports__id__download_get_response_0" href="#v1_reports__id__download_get_response_0" data-tab="0"> <span class="status" data-code="200"></span> </a> </li> <li> <a id="v1_reports__id__download_get_response_1" href="#v1_reports__id__download_get_response_1" data-tab="1"> <span class="status" data-code="403"></span> </a> </li> <li> <a id="v1_reports__id__download_get_response_2" href="#v1_reports__id__download_get_response_2" data-tab="2"> <span class="status" data-code="404"></span> </a> </li> <li> <a id="v1_reports__id__download_get_response_3" href="#v1_reports__id__download_get_response_3" data-tab="3"> <span class="status" data-code="500"></span> </a> </li> </ul> </header> <div class="tabbable-contents" data-tabbable-contents="v1_reports__id__download_get_response"> <div data-tab-content="0"> <div class="content"> <p>Request erfolgreich</p> <p>Der Content-Type ist abhängig vom Mime-Type des Formats, das im Bericht hinterlegt ist.</p> </div> </div> <div data-tab-content="1"> <div class="content"> <p>Der Bericht ist nicht für den Zugriff über diesen API Account freigegeben.</p> </div> <div class="tabbable" data-component="tabbable" data-tabbable-id="undefined_body"> <header class="tabs is-boxed"> <strong class="title is-6">Body</strong> <ul class="tabbable-tabs" data-tabbable-tabs="undefined_body"> <li> <a id="v1_reports__id__download_get_body_0" href="#v1_reports__id__download_get_body_0" data-tab="0"> application/json </a> </li> </ul> </header> <div class="tabbable-contents" data-tabbable-contents="undefined_body"> <div data-tab-content="0"> <h6 class="title is-6"></h6> <ul> <li> <details> <summary>Example</summary> <pre><code>{
|
|||
|
"error": {
|
|||
|
"http_code": 403,
|
|||
|
"message": "Access denied"
|
|||
|
}
|
|||
|
}
|
|||
|
</code></pre> </details> </li> </ul> </div> </div> </div> </div> <div data-tab-content="2"> <div class="content"> <p>Bericht wurde nicht gefunden</p> </div> <div class="tabbable" data-component="tabbable" data-tabbable-id="undefined_body"> <header class="tabs is-boxed"> <strong class="title is-6">Body</strong> <ul class="tabbable-tabs" data-tabbable-tabs="undefined_body"> <li> <a id="v1_reports__id__download_get_body_0" href="#v1_reports__id__download_get_body_0" data-tab="0"> application/json </a> </li> </ul> </header> <div class="tabbable-contents" data-tabbable-contents="undefined_body"> <div data-tab-content="0"> <h6 class="title is-6"></h6> <ul> <li> <details> <summary>Example</summary> <pre><code>{
|
|||
|
"error": {
|
|||
|
"code": 7452,
|
|||
|
"http_code": 404,
|
|||
|
"message": "Resource not found",
|
|||
|
"href": "http://www.example.com/api/docs.html#error-7452"
|
|||
|
}
|
|||
|
}
|
|||
|
</code></pre> </details> </li> </ul> </div> </div> </div> </div> <div data-tab-content="3"> <div class="content"> <p>Der Bericht konnte nicht erstellt werden. Der Bericht ist eventuell fehlerhaft.</p> </div> <div class="tabbable" data-component="tabbable" data-tabbable-id="undefined_body"> <header class="tabs is-boxed"> <strong class="title is-6">Body</strong> <ul class="tabbable-tabs" data-tabbable-tabs="undefined_body"> <li> <a id="v1_reports__id__download_get_body_0" href="#v1_reports__id__download_get_body_0" data-tab="0"> application/json </a> </li> </ul> </header> <div class="tabbable-contents" data-tabbable-contents="undefined_body"> <div data-tab-content="0"> <h6 class="title is-6"></h6> <ul> <li> <details> <summary>Example</summary> <pre><code>{
|
|||
|
"error": {
|
|||
|
"code": 7499,
|
|||
|
"http_code": 500,
|
|||
|
"message": "Unknown server error",
|
|||
|
"href": "http://localhost/xentral/20.1/www/api/docs.html#error-7499"
|
|||
|
}
|
|||
|
}
|
|||
|
</code></pre> </details> </li> </ul> </div> </div> </div> </div> </div> </div> </div> </div> <!-- end of resource block for GET /v1/reports/{id}/download --> <!-- end of list of methods for /v1/reports/{id}/download --> </div> <div id="v1_steuersaetze" class="group" data-spy data-spy-parent="__all_resources"> <header class="group-header"> <div class="group-title"> <h3 class="title is-3">/v1/steuersaetze</h3> </div> <div class="content"> <p>Steuersätze anlegen, bearbeiten und abrufen</p> </div> </header> <!-- list of methods for /v1/steuersaetze --> <!-- begin of resource block for GET /v1/steuersaetze --> <div id="v1_steuersaetze_get" class="group-endpoint" data-spy data-spy-parent="v1_steuersaetze"> <header> <h4 class="title is-4 is-anchored"> Steuersätze abrufen <a class="anchor" href="#v1_steuersaetze_get">¶</a> <div class="subtitle is-6"> <strong class="method is-get">GET</strong> <span class="value">/v1/steuersaetze</span> </div> </h4> <div class="content"> <p>Steuersätze abrufen</p> <p>Permission: <code>list_tax_rates</code></p> </div> </header> <div> <h5 class="title is-5">Request</h5> <div class="indent"> <h6 class="title is-6">Query Parameters</h6> <table class="table is-property-list"> <tbody> <tr> <th scope="row"> bezeichnung <div class="typedef-type">string, optional</div> </th> <td> <div class="content"> <p>Steuersatz mit bestimmter Bezeichnung suchen (ungefähre Übereinstimmung)</p> </div> </td> </tr> <tr> <th scope="row"> satz <div class="typedef-type">string, optional</div> </th> <td> <div class="content"> <p>Nach Steuersatz filtern (genaue Übereinstimmung)</p> </div> </td> </tr> <tr> <th scope="row"> aktiv <div class="typedef-type">integer, optional</div> </th> <td> <div class="content"> <p>Aktive/Inaktive Steuersätze filtern (1 = aktiv / 0 = inaktiv)</p> </div> </td> </tr> <tr> <th scope="row"> sort <div class="typedef-type">string, optional</div> </th> <td> <div class="content"> <p>Sortierung (Beispiel: <code>sort=satz,-bezeichnung</code>)</p> <p>Verfügbare Felder: <code>bezeichnung</code>, <code>satz</code>, <code>aktiv</code></p> </div> </td> </tr> <tr> <th scope="row"> page <div class="typedef-type">integer , default: <code>1</code>, maximum: 1000, optional</div> </th> <td> <div class="content"> <p>Seitenzahl</p> </div> </td> </tr> <tr> <th scope="row"> items <div class="typedef-type">integer , default: <code>20</code>, maximum: 1000, optional</div> </th> <td> <div class="content"> <p>Anzahl der Ergebnisse pro Seite</p> </div> </td> </tr> </tbody> </table> </div> </div> </div> <!-- end of resource block for GET /v1/steuersaetze --> <!-- begin of resource block for POST /v1/steuersaetze --> <div id="v1_steuersaetze_post" class="group-endpoint" data-spy data-spy-parent="v1_steuersaetze"> <header> <h4 class="title is-4 is-anchored"> Steuersatz anlegen <a class="anchor" href="#v1_steuersaetze_post">¶</a> <div class="subtitle is-6"> <strong class="method is-post">POST</strong> <span class="value">/v1/steuersaetze</span> </div> </h4> <div class="content"> <p>Steuersatz anlegen</p> <p>Permission: <code>create_tax_rate</code></p> </div> </header> <div> <h5 class="title is-5">Request</h5> <div class="indent"> <div class="tabbable" data-component="tabbable" data-tabbable-id="undefined_body"> <header class="tabs is-boxed"> <strong class="title is-6">Body</strong> <ul class="tabbable-tabs" data-tabbable-tabs="undefined_body"> <li> <a id="v1_steuersaetze_post_body_0" href="#v1_steuersaetze_post_body_0" data-tab="0"> application/json </a> </li> </ul> </header> <div class="tabbable-contents" data-tabbable-contents="undefined_body"> <div data-tab-content="0"> <h6 class="title is-6">Properties (object)</h6> <table class="table is-property-list"> <tbody> <tr> <th scope="row"> bezeichnung <div class="typedef-type">string, <strong class="typedef-required">required</strong></div> </th> <td> <div class="content"> <p>Bezeichnung des Steuersatzes</p> </div> </td> </tr> <tr> <th scope="row"> satz <div class="typedef-type">string, <strong class="typedef-required">required</strong></div> </th> <td> <div class="conte
|
|||
|
"bezeichnung": "Steuer DE ermäßigt",
|
|||
|
"satz": "7.00",
|
|||
|
"aktiv": 1
|
|||
|
}
|
|||
|
</code></pre> </details> </li> </ul> </div> </div> </div> </div> <h5 class="title is-5">Response</h5> <div class="tabbable is-vertical" data-component="tabbable" data-tabbable-id="v1_steuersaetze_post_response"> <header class="tabs is-boxed"> <ul class="tabbable-tabs" data-tabbable-tabs="v1_steuersaetze_post_response"> <li> <a id="v1_steuersaetze_post_response_0" href="#v1_steuersaetze_post_response_0" data-tab="0"> <span class="status" data-code="201"></span> </a> </li> </ul> </header> <div class="tabbable-contents" data-tabbable-contents="v1_steuersaetze_post_response"> <div data-tab-content="0"> <div class="content"> <p>Request erfolgreich; Angelegter Steuersatz wird zurückgeliefert</p> </div> <div class="tabbable" data-component="tabbable" data-tabbable-id="undefined_body"> <header class="tabs is-boxed"> <strong class="title is-6">Body</strong> <ul class="tabbable-tabs" data-tabbable-tabs="undefined_body"> <li> <a id="v1_steuersaetze_post_body_0" href="#v1_steuersaetze_post_body_0" data-tab="0"> application/json </a> </li> </ul> </header> <div class="tabbable-contents" data-tabbable-contents="undefined_body"> <div data-tab-content="0"> <h6 class="title is-6"></h6> <ul> <li> <details> <summary>Example</summary> <pre><code>{
|
|||
|
"success": true,
|
|||
|
"data": {
|
|||
|
"id": "14",
|
|||
|
"bezeichnung": "Steuer DE ermäßigt",
|
|||
|
"satz": "7.00",
|
|||
|
"aktiv": "1"
|
|||
|
}
|
|||
|
}
|
|||
|
</code></pre> </details> </li> </ul> </div> </div> </div> </div> </div> </div> </div> </div> <!-- end of resource block for POST /v1/steuersaetze --> <!-- end of list of methods for /v1/steuersaetze --> <!-- list of methods for /v1/steuersaetze/{id} --> <span id="v1_steuersaetze__id_" class="group-resource-group-marker" data-spy data-spy-parent="v1_steuersaetze"></span> <!-- begin of resource block for GET /v1/steuersaetze/{id} --> <div id="v1_steuersaetze__id__get" class="group-endpoint" data-spy data-spy-parent="v1_steuersaetze__id_"> <header> <h4 class="title is-4 is-anchored"> Einzelnen Steuersatz abrufen <a class="anchor" href="#v1_steuersaetze__id__get">¶</a> <div class="subtitle is-6"> <strong class="method is-get">GET</strong> <span class="value">/v1/steuersaetze/{id}</span> </div> </h4> <div class="content"> <p>Einzelnen Steuersatz abrufen</p> <p>Permission: <code>view_tax_rate</code></p> </div> </header> <div> <h5 class="title is-5">Request</h5> <div class="indent"> <h6 class="title is-6">Path Variables</h6> <table class="table is-property-list"> <tbody> <tr> <th scope="row"> id <div class="typedef-type">integer, <strong class="typedef-required">required</strong></div> </th> <td> <div class="content"> <p>Steuersatz-ID</p> </div> </td> </tr> </tbody> </table> </div> <h5 class="title is-5">Response</h5> <div class="tabbable is-vertical" data-component="tabbable" data-tabbable-id="v1_steuersaetze__id__get_response"> <header class="tabs is-boxed"> <ul class="tabbable-tabs" data-tabbable-tabs="v1_steuersaetze__id__get_response"> <li> <a id="v1_steuersaetze__id__get_response_0" href="#v1_steuersaetze__id__get_response_0" data-tab="0"> <span class="status" data-code="200"></span> </a> </li> <li> <a id="v1_steuersaetze__id__get_response_1" href="#v1_steuersaetze__id__get_response_1" data-tab="1"> <span class="status" data-code="404"></span> </a> </li> </ul> </header> <div class="tabbable-contents" data-tabbable-contents="v1_steuersaetze__id__get_response"> <div data-tab-content="0"> <div class="content"> <p>Request erfolgreich</p> </div> <div class="tabbable" data-component="tabbable" data-tabbable-id="undefined_body"> <header class="tabs is-boxed"> <strong class="title is-6">Body</strong> <ul class="tabbable-tabs" data-tabbable-tabs="undefined_body"> <li> <a id="v1_steuersaetze__id__get_body_0" href="#v1_steuersaetze__id__get_body_0" data-tab="0"> application/json </a> </li> </ul> </header> <div class="tabbable-contents" data-tabbable-contents="undefined_body"> <div data-tab-content="0"> <h6 class="title is-6"></h6> <ul> <li> <details> <summary>Example</summary> <pre><code>{
|
|||
|
"data": {
|
|||
|
"id": "1",
|
|||
|
"bezeichnung": "Steuersatz DE normal",
|
|||
|
"country_code": "DE",
|
|||
|
"satz": "19.00",
|
|||
|
"aktiv": "1"
|
|||
|
}
|
|||
|
}
|
|||
|
</code></pre> </details> </li> </ul> </div> </div> </div> </div> <div data-tab-content="1"> <div class="content"> <p>Steuersatz wurde nicht gefunden</p> </div> <div class="tabbable" data-component="tabbable" data-tabbable-id="undefined_body"> <header class="tabs is-boxed"> <strong class="title is-6">Body</strong> <ul class="tabbable-tabs" data-tabbable-tabs="undefined_body"> <li> <a id="v1_steuersaetze__id__get_body_0" href="#v1_steuersaetze__id__get_body_0" data-tab="0"> application/json </a> </li> </ul> </header> <div class="tabbable-contents" data-tabbable-contents="undefined_body"> <div data-tab-content="0"> <h6 class="title is-6"></h6> <ul> <li> <details> <summary>Example</summary> <pre><code>{
|
|||
|
"error": {
|
|||
|
"code": 7452,
|
|||
|
"http_code": 404,
|
|||
|
"message": "Resource not found",
|
|||
|
"href": "http://www.example.com/api/docs.html#error-7452"
|
|||
|
}
|
|||
|
}
|
|||
|
</code></pre> </details> </li> </ul> </div> </div> </div> </div> </div> </div> </div> </div> <!-- end of resource block for GET /v1/steuersaetze/{id} --> <!-- begin of resource block for PUT /v1/steuersaetze/{id} --> <div id="v1_steuersaetze__id__put" class="group-endpoint" data-spy data-spy-parent="v1_steuersaetze__id_"> <header> <h4 class="title is-4 is-anchored"> Steuersatz bearbeiten <a class="anchor" href="#v1_steuersaetze__id__put">¶</a> <div class="subtitle is-6"> <strong class="method is-put">PUT</strong> <span class="value">/v1/steuersaetze/{id}</span> </div> </h4> <div class="content"> <p>Steuersatz bearbeiten</p> <p>Permission: <code>edit_tax_rates</code></p> </div> </header> <div> <h5 class="title is-5">Request</h5> <div class="indent"> <h6 class="title is-6">Path Variables</h6> <table class="table is-property-list"> <tbody> <tr> <th scope="row"> id <div class="typedef-type">integer, <strong class="typedef-required">required</strong></div> </th> <td> <div class="content"> <p>Steuersatz-ID</p> </div> </td> </tr> </tbody> </table> <div class="tabbable" data-component="tabbable" data-tabbable-id="undefined_body"> <header class="tabs is-boxed"> <strong class="title is-6">Body</strong> <ul class="tabbable-tabs" data-tabbable-tabs="undefined_body"> <li> <a id="v1_steuersaetze__id__put_body_0" href="#v1_steuersaetze__id__put_body_0" data-tab="0"> application/json </a> </li> </ul> </header> <div class="tabbable-contents" data-tabbable-contents="undefined_body"> <div data-tab-content="0"> <h6 class="title is-6">Properties (object)</h6> <table class="table is-property-list"> <tbody> <tr> <th scope="row"> bezeichnung <div class="typedef-type">string, <strong class="typedef-required">required</strong></div> </th> <td> <div class="content"> <p>Bezeichnung des Steuersatzes</p> </div> </td> </tr> <tr> <th scope="row"> country_code <div class="typedef-type">string, optional</div> </th> <td> <div class="content"> <p>Ländercode des Steuersatzes</p> </div> </td> </tr> <tr> <th scope="row"> satz <div class="typedef-type">string, <strong class="typedef-required">required</strong></div> </th> <td> <div class="content"> <p>Steuersatz in Prozent (ohne Prozentzeichen; Dezimaltrenner = Punkt)</p> </div> </td> </tr> <tr> <th scope="row"> aktiv <div class="typedef-type">integer, optional</div> </th> <td> <div class="content"> <p>Aktiv (1 = aktiv / 0 = inaktiv)</p> </div> </td> </tr> </tbody> </table> <h6 class="title is-6"></h6> <ul> <li> <details> <summary>Example</summary> <pre><code>{
|
|||
|
"bezeichnung": "Steuer DE normal",
|
|||
|
"satz": "19.00"
|
|||
|
}
|
|||
|
</code></pre> </details> </li> </ul> </div> </div> </div> </div> <h5 class="title is-5">Response</h5> <div class="tabbable is-vertical" data-component="tabbable" data-tabbable-id="v1_steuersaetze__id__put_response"> <header class="tabs is-boxed"> <ul class="tabbable-tabs" data-tabbable-tabs="v1_steuersaetze__id__put_response"> <li> <a id="v1_steuersaetze__id__put_response_0" href="#v1_steuersaetze__id__put_response_0" data-tab="0"> <span class="status" data-code="200"></span> </a> </li> </ul> </header> <div class="tabbable-contents" data-tabbable-contents="v1_steuersaetze__id__put_response"> <div data-tab-content="0"> <div class="content"> <p>Request erfolgreich; Aktualisierter Steuersatz wird zurückgeliefert</p> </div> <div class="tabbable" data-component="tabbable" data-tabbable-id="undefined_body"> <header class="tabs is-boxed"> <strong class="title is-6">Body</strong> <ul class="tabbable-tabs" data-tabbable-tabs="undefined_body"> <li> <a id="v1_steuersaetze__id__put_body_0" href="#v1_steuersaetze__id__put_body_0" data-tab="0"> application/json </a> </li> </ul> </header> <div class="tabbable-contents" data-tabbable-contents="undefined_body"> <div data-tab-content="0"> <h6 class="title is-6"></h6> <ul> <li> <details> <summary>Example</summary> <pre><code>{
|
|||
|
"data": {
|
|||
|
"id": "1",
|
|||
|
"bezeichnung": "Steuer DE normal",
|
|||
|
"country_code": "DE",
|
|||
|
"satz": "19.00",
|
|||
|
"aktiv": "1"
|
|||
|
}
|
|||
|
}
|
|||
|
</code></pre> </details> </li> </ul> </div> </div> </div> </div> </div> </div> </div> </div> <!-- end of resource block for PUT /v1/steuersaetze/{id} --> <!-- end of list of methods for /v1/steuersaetze/{id} --> </div> <div id="v1_trackingnummern" class="group" data-spy data-spy-parent="__all_resources"> <header class="group-header"> <div class="group-title"> <h3 class="title is-3">/v1/trackingnummern</h3> </div> </header> <!-- list of methods for /v1/trackingnummern --> <!-- begin of resource block for GET /v1/trackingnummern --> <div id="v1_trackingnummern_get" class="group-endpoint" data-spy data-spy-parent="v1_trackingnummern"> <header> <h4 class="title is-4 is-anchored"> Trackingnummern abrufen <a class="anchor" href="#v1_trackingnummern_get">¶</a> <div class="subtitle is-6"> <strong class="method is-get">GET</strong> <span class="value">/v1/trackingnummern</span> </div> </h4> <div class="content"> <p>Endpunkt zum Abrufen von Trackingnummern</p> <p>Permission: <code>list_tracking_numbers</code></p> </div> </header> <div> <h5 class="title is-5">Request</h5> <div class="indent"> <h6 class="title is-6">Query Parameters</h6> <table class="table is-property-list"> <tbody> <tr> <th scope="row"> tracking <div class="typedef-type">string, optional</div> </th> <td> <div class="content"> <p>Suche nach bestimmter Trackingnummer (ungefähre Übereinstimmung)</p> </div> </td> </tr> <tr> <th scope="row"> tracking_equals <div class="typedef-type">string, optional</div> </th> <td> <div class="content"> <p>Suche nach bestimmter Trackingnummer (genaue Übereinstimmung)</p> </div> </td> </tr> <tr> <th scope="row"> tracking_startswith <div class="typedef-type">string, optional</div> </th> <td> <div class="content"> <p>Suche nach bestimmter Trackingnummer (Übereinstimmung am Anfang)</p> </div> </td> </tr> <tr> <th scope="row"> tracking_endswith <div class="typedef-type">string, optional</div> </th> <td> <div class="content"> <p>Suche nach bestimmter Trackingnummer (Übereinstimmung am Ende)</p> </div> </td> </tr> <tr> <th scope="row"> lieferschein <div class="typedef-type">string, optional</div> </th> <td> <div class="content"> <p>Suche nach bestimmter Lieferscheinnummer (ungefähre Übereinstimmung)</p> </div> </td> </tr> <tr> <th scope="row"> lieferschein_equals <div class="typedef-type">string, optional</div> </th> <td> <div class="content"> <p>Suche nach bestimmter Lieferscheinnummer (genaue Übereinstimmung)</p> </div> </td> </tr> <tr> <th scope="row"> lieferschein_startswith <div class="typedef-type">string, optional</div> </th> <td> <div class="content"> <p>Suche nach bestimmter Lieferscheinnummer (Übereinstimmung am Anfang)</p> </div> </td> </tr> <tr> <th scope="row"> lieferschein_endswith <div class="typedef-type">string, optional</div> </th> <td> <div class="content"> <p>Suche nach bestimmter Lieferscheinnummer (Übereinstimmung am Ende)</p> </div> </td> </tr> <tr> <th scope="row"> auftrag <div class="typedef-type">string, optional</div> </th> <td> <div class="content"> <p>Suche nach bestimmter Auftragsnummer (ungefähre Übereinstimmung)</p> </div> </td> </tr> <tr> <th scope="row"> auftrag_equals <div class="typedef-type">string, optional</div> </th> <td> <div class="content"> <p>Suche nach bestimmter Auftragsnummer (genaue Übereinstimmung)</p> </div> </td> </tr> <tr> <th scope="row"> auftrag_startswith <div class="typedef-type">string, optional</div> </th> <td> <div class="content"> <p>Suche nach bestimmter Auftragsnummer (Übereinstimmung am Anfang)</p> </div> </td> </tr> <tr> <th scope="row"> auftrag_endswith <div class="typedef-type">string, optional</div> </th> <td> <div class="content"> <p>Suche nach bestimmter Auftragsnummer (Übereinstimmung am Ende)</p> </div> </td> </tr> <tr> <th scope="row"> internet <div class="typedef-type">string, optional</div> </th> <td> <div class="content"> <p>Suche nach bestimmter Internetnummer (ungefähre Übereinstimmung)</p> </div> </td> </tr> <tr> <th scope="row"> internet_equals <div class="typedef-type">string, optional</div> </th> <td> <div class="content"> <p>Suche nach bestim
|
|||
|
"tracking": "11223344556677889900",
|
|||
|
"internet": "111001",
|
|||
|
"auftrag": "200001",
|
|||
|
"lieferschein": "300001",
|
|||
|
"anzahlpakete": 1,
|
|||
|
"gewicht": "2 kg",
|
|||
|
"versendet_am": "2019-07-25"
|
|||
|
}
|
|||
|
</code></pre> </details> </li> </ul> </div> </div> </div> </div> <h5 class="title is-5">Response</h5> <div class="tabbable is-vertical" data-component="tabbable" data-tabbable-id="v1_trackingnummern_post_response"> <header class="tabs is-boxed"> <ul class="tabbable-tabs" data-tabbable-tabs="v1_trackingnummern_post_response"> <li> <a id="v1_trackingnummern_post_response_0" href="#v1_trackingnummern_post_response_0" data-tab="0"> <span class="status" data-code="201"></span> </a> </li> </ul> </header> <div class="tabbable-contents" data-tabbable-contents="v1_trackingnummern_post_response"> <div data-tab-content="0"> <div class="content"> <p>Request erfolgreich; Angelegte Trackingnummer wird zurückgeliefert</p> </div> <div class="tabbable" data-component="tabbable" data-tabbable-id="undefined_body"> <header class="tabs is-boxed"> <strong class="title is-6">Body</strong> <ul class="tabbable-tabs" data-tabbable-tabs="undefined_body"> <li> <a id="v1_trackingnummern_post_body_0" href="#v1_trackingnummern_post_body_0" data-tab="0"> application/json </a> </li> </ul> </header> <div class="tabbable-contents" data-tabbable-contents="undefined_body"> <div data-tab-content="0"> <h6 class="title is-6"></h6> <ul> <li> <details> <summary>Example</summary> <pre><code>{
|
|||
|
"success": true,
|
|||
|
"data": {
|
|||
|
"id": 8,
|
|||
|
"tracking": "11223344556677889900",
|
|||
|
"adresse": 5,
|
|||
|
"internet": "111001",
|
|||
|
"auftrag": "200001",
|
|||
|
"lieferschein": "300001",
|
|||
|
"projekt": 1,
|
|||
|
"versandart": "versandunternehmen",
|
|||
|
"land": "DE",
|
|||
|
"gewicht": "2 kg",
|
|||
|
"abgeschlossen": 0,
|
|||
|
"versendet_am": "2019-07-25",
|
|||
|
"anzahlpakete": 1,
|
|||
|
"retoure": 0,
|
|||
|
"klaergrund": ""
|
|||
|
}
|
|||
|
}
|
|||
|
</code></pre> </details> </li> </ul> </div> </div> </div> </div> </div> </div> </div> </div> <!-- end of resource block for POST /v1/trackingnummern --> <!-- end of list of methods for /v1/trackingnummern --> <!-- list of methods for /v1/trackingnummern/{id} --> <span id="v1_trackingnummern__id_" class="group-resource-group-marker" data-spy data-spy-parent="v1_trackingnummern"></span> <!-- begin of resource block for GET /v1/trackingnummern/{id} --> <div id="v1_trackingnummern__id__get" class="group-endpoint" data-spy data-spy-parent="v1_trackingnummern__id_"> <header> <h4 class="title is-4 is-anchored"> Einzelne Trackingnummer abrufen <a class="anchor" href="#v1_trackingnummern__id__get">¶</a> <div class="subtitle is-6"> <strong class="method is-get">GET</strong> <span class="value">/v1/trackingnummern/{id}</span> </div> </h4> <div class="content"> <p>Einzelne Trackingnummer abrufen</p> <p>Permission: <code>view_tracking_number</code></p> </div> </header> <div> <h5 class="title is-5">Request</h5> <div class="indent"> <h6 class="title is-6">Path Variables</h6> <table class="table is-property-list"> <tbody> <tr> <th scope="row"> id <div class="typedef-type">integer, <strong class="typedef-required">required</strong></div> </th> <td> <div class="content"> <p>Trackingnummer-ID</p> </div> </td> </tr> </tbody> </table> </div> </div> </div> <!-- end of resource block for GET /v1/trackingnummern/{id} --> <!-- begin of resource block for PUT /v1/trackingnummern/{id} --> <div id="v1_trackingnummern__id__put" class="group-endpoint" data-spy data-spy-parent="v1_trackingnummern__id_"> <header> <h4 class="title is-4 is-anchored"> Trackingnummer bearbeiten <a class="anchor" href="#v1_trackingnummern__id__put">¶</a> <div class="subtitle is-6"> <strong class="method is-put">PUT</strong> <span class="value">/v1/trackingnummern/{id}</span> </div> </h4> <div class="content"> <p>Trackingnummer bearbeiten (Felder siehe "Trackingnummer anlegen")</p> <p>Permission: <code>edit_tracking_number</code></p> </div> </header> <div> <h5 class="title is-5">Request</h5> <div class="indent"> <h6 class="title is-6">Path Variables</h6> <table class="table is-property-list"> <tbody> <tr> <th scope="row"> id <div class="typedef-type">integer, <strong class="typedef-required">required</strong></div> </th> <td> <div class="content"> <p>Trackingnummer-ID</p> </div> </td> </tr> </tbody> </table> <div class="tabbable" data-component="tabbable" data-tabbable-id="undefined_body"> <header class="tabs is-boxed"> <strong class="title is-6">Body</strong> <ul class="tabbable-tabs" data-tabbable-tabs="undefined_body"> <li> <a id="v1_trackingnummern__id__put_body_0" href="#v1_trackingnummern__id__put_body_0" data-tab="0"> application/json </a> </li> </ul> </header> <div class="tabbable-contents" data-tabbable-contents="undefined_body"> <div data-tab-content="0"> <h6 class="title is-6"></h6> <ul> <li> <details> <summary>Example</summary> <pre><code>{
|
|||
|
"tracking": "11223344556677889900",
|
|||
|
"versendet_am": "2019-06-22",
|
|||
|
"anzahlpakete": 2
|
|||
|
}
|
|||
|
</code></pre> </details> </li> </ul> </div> </div> </div> </div> <h5 class="title is-5">Response</h5> <div class="tabbable is-vertical" data-component="tabbable" data-tabbable-id="v1_trackingnummern__id__put_response"> <header class="tabs is-boxed"> <ul class="tabbable-tabs" data-tabbable-tabs="v1_trackingnummern__id__put_response"> <li> <a id="v1_trackingnummern__id__put_response_0" href="#v1_trackingnummern__id__put_response_0" data-tab="0"> <span class="status" data-code="200"></span> </a> </li> </ul> </header> <div class="tabbable-contents" data-tabbable-contents="v1_trackingnummern__id__put_response"> <div data-tab-content="0"> <div class="content"> <p>Request erfolgreich; Aktualisierter Trackingnummern-Eintrag wird zurückgeliefert</p> </div> <div class="tabbable" data-component="tabbable" data-tabbable-id="undefined_body"> <header class="tabs is-boxed"> <strong class="title is-6">Body</strong> <ul class="tabbable-tabs" data-tabbable-tabs="undefined_body"> <li> <a id="v1_trackingnummern__id__put_body_0" href="#v1_trackingnummern__id__put_body_0" data-tab="0"> application/json </a> </li> </ul> </header> <div class="tabbable-contents" data-tabbable-contents="undefined_body"> <div data-tab-content="0"> <h6 class="title is-6"></h6> <ul> <li> <details> <summary>Example</summary> <pre><code>{
|
|||
|
"success": true,
|
|||
|
"data": {
|
|||
|
"id": 8,
|
|||
|
"tracking": "11223344556677889900",
|
|||
|
"adresse": 5,
|
|||
|
"internet": "111001",
|
|||
|
"auftrag": "200001",
|
|||
|
"lieferschein": "300001",
|
|||
|
"projekt": 1,
|
|||
|
"versandart": "versandunternehmen",
|
|||
|
"land": "DE",
|
|||
|
"gewicht": "2 kg",
|
|||
|
"abgeschlossen": 0,
|
|||
|
"versendet_am": "2019-06-22",
|
|||
|
"anzahlpakete": 2,
|
|||
|
"retoure": 0,
|
|||
|
"klaergrund": ""
|
|||
|
}
|
|||
|
}
|
|||
|
</code></pre> </details> </li> </ul> </div> </div> </div> </div> </div> </div> </div> </div> <!-- end of resource block for PUT /v1/trackingnummern/{id} --> <!-- end of list of methods for /v1/trackingnummern/{id} --> </div> <div id="v1_versandarten" class="group" data-spy data-spy-parent="__all_resources"> <header class="group-header"> <div class="group-title"> <h3 class="title is-3">/v1/versandarten</h3> </div> <div class="content"> <p>Versandarten anlegen, bearbeiten und abrufen</p> </div> </header> <!-- list of methods for /v1/versandarten --> <!-- begin of resource block for GET /v1/versandarten --> <div id="v1_versandarten_get" class="group-endpoint" data-spy data-spy-parent="v1_versandarten"> <header> <h4 class="title is-4 is-anchored"> Versandarten abrufen <a class="anchor" href="#v1_versandarten_get">¶</a> <div class="subtitle is-6"> <strong class="method is-get">GET</strong> <span class="value">/v1/versandarten</span> </div> </h4> <div class="content"> <p>Versandarten abrufen</p> <p>Permission: <code>list_shipping_methods</code></p> </div> </header> <div> <h5 class="title is-5">Request</h5> <div class="indent"> <h6 class="title is-6">Query Parameters</h6> <table class="table is-property-list"> <tbody> <tr> <th scope="row"> bezeichnung <div class="typedef-type">string, optional</div> </th> <td> <div class="content"> <p>Versandart mit bestimmter Bezeichnung suchen (ungefähre Übereinstimmung)</p> </div> </td> </tr> <tr> <th scope="row"> bezeichnung_exakt <div class="typedef-type">string, optional</div> </th> <td> <div class="content"> <p>Versandart mit bestimmter Bezeichnung suchen (genaue Übereinstimmung)</p> </div> </td> </tr> <tr> <th scope="row"> type <div class="typedef-type">string, optional</div> </th> <td> <div class="content"> <p>Versandart eines bestimmten Typs suchen (ungefähre Übereinstimmung)</p> </div> </td> </tr> <tr> <th scope="row"> type_exakt <div class="typedef-type">string, optional</div> </th> <td> <div class="content"> <p>Versandart eines bestimmten Typs suchen (genaue Übereinstimmung)</p> </div> </td> </tr> <tr> <th scope="row"> projekt <div class="typedef-type">integer, optional</div> </th> <td> <div class="content"> <p>Versandarten eines Projekts filtern (genaue Übereinstimmung)</p> </div> </td> </tr> <tr> <th scope="row"> modul <div class="typedef-type">integer, optional</div> </th> <td> <div class="content"> <p>Versandarten mit bestimmtem Modul filtern (genaue Übereinstimmung)</p> </div> </td> </tr> <tr> <th scope="row"> aktiv <div class="typedef-type">integer, optional</div> </th> <td> <div class="content"> <p>Aktive/Inaktive Versandarten filtern (1 = aktiv / 0 = inaktiv)</p> </div> </td> </tr> <tr> <th scope="row"> sort <div class="typedef-type">string, optional</div> </th> <td> <div class="content"> <p>Sortierung (Beispiel: <code>sort=type,-bezeichnung</code>)</p> <p>Verfügbare Felder: <code>bezeichnung</code>, <code>type</code>, <code>projekt</code>, <code>modul</code>, <code>aktiv</code></p> </div> </td> </tr> <tr> <th scope="row"> include <div class="typedef-type">string, optional</div> </th> <td> <div class="content"> <p>Unter-Resourcen in Resource einbinden (Beispiel: <code>include=projekt</code>)</p> <p>Verfügbare Includes: <code>projekt</code></p> </div> </td> </tr> <tr> <th scope="row"> page <div class="typedef-type">integer , default: <code>1</code>, maximum: 1000, optional</div> </th> <td> <div class="content"> <p>Seitenzahl</p> </div> </td> </tr> <tr> <th scope="row"> items <div class="typedef-type">integer , default: <code>20</code>, maximum: 1000, optional</div> </th> <td> <div class="content"> <p>Anzahl der Ergebnisse pro Seite</p> </div> </td> </tr> </tbody> </table> </div> </div> </div> <!-- end of resource block for GET /v1/versandarten --> <!-- begin of resource block for POST /v1/versandarten --> <div id="v1_versandarten_post" class="group-endpoint" data-spy data-spy-parent="v1_versandarten"> <header> <h4 class="title is-4 is-anchored"> Versandart anlegen <a class="anchor" href="#v1_versandarten_post">¶</a> <div class="subtitle is-6"> <strong class="met
|
|||
|
"type": "DHL",
|
|||
|
"bezeichnung": "DHL",
|
|||
|
"aktiv": 1,
|
|||
|
"projekt": 1
|
|||
|
}
|
|||
|
</code></pre> </details> </li> </ul> </div> </div> </div> </div> <h5 class="title is-5">Response</h5> <div class="tabbable is-vertical" data-component="tabbable" data-tabbable-id="v1_versandarten_post_response"> <header class="tabs is-boxed"> <ul class="tabbable-tabs" data-tabbable-tabs="v1_versandarten_post_response"> <li> <a id="v1_versandarten_post_response_0" href="#v1_versandarten_post_response_0" data-tab="0"> <span class="status" data-code="201"></span> </a> </li> </ul> </header> <div class="tabbable-contents" data-tabbable-contents="v1_versandarten_post_response"> <div data-tab-content="0"> <div class="content"> <p>Request erfolgreich; Angelegte Versandart wird zurückgeliefert</p> </div> <div class="tabbable" data-component="tabbable" data-tabbable-id="undefined_body"> <header class="tabs is-boxed"> <strong class="title is-6">Body</strong> <ul class="tabbable-tabs" data-tabbable-tabs="undefined_body"> <li> <a id="v1_versandarten_post_body_0" href="#v1_versandarten_post_body_0" data-tab="0"> application/json </a> </li> </ul> </header> <div class="tabbable-contents" data-tabbable-contents="undefined_body"> <div data-tab-content="0"> <h6 class="title is-6"></h6> <ul> <li> <details> <summary>Example</summary> <pre><code>{
|
|||
|
"success": true,
|
|||
|
"data": {
|
|||
|
"id": "15",
|
|||
|
"type": "DHL",
|
|||
|
"bezeichnung": "DHL",
|
|||
|
"aktiv": "1",
|
|||
|
"projekt": "1",
|
|||
|
"modul": "",
|
|||
|
"paketmarke_drucker": "0",
|
|||
|
"export_drucker": "0",
|
|||
|
"ausprojekt": "1",
|
|||
|
"versandmail": "0",
|
|||
|
"geschaeftsbrief_vorlage": "0"
|
|||
|
}
|
|||
|
}
|
|||
|
</code></pre> </details> </li> </ul> </div> </div> </div> </div> </div> </div> </div> </div> <!-- end of resource block for POST /v1/versandarten --> <!-- end of list of methods for /v1/versandarten --> <!-- list of methods for /v1/versandarten/{id} --> <span id="v1_versandarten__id_" class="group-resource-group-marker" data-spy data-spy-parent="v1_versandarten"></span> <!-- begin of resource block for GET /v1/versandarten/{id} --> <div id="v1_versandarten__id__get" class="group-endpoint" data-spy data-spy-parent="v1_versandarten__id_"> <header> <h4 class="title is-4 is-anchored"> Einzelnen Versandart abrufen <a class="anchor" href="#v1_versandarten__id__get">¶</a> <div class="subtitle is-6"> <strong class="method is-get">GET</strong> <span class="value">/v1/versandarten/{id}</span> </div> </h4> <div class="content"> <p>Einzelnen Versandart abrufen</p> <p>Permission: <code>view_shipping_method</code></p> </div> </header> <div> <h5 class="title is-5">Request</h5> <div class="indent"> <h6 class="title is-6">Path Variables</h6> <table class="table is-property-list"> <tbody> <tr> <th scope="row"> id <div class="typedef-type">integer, <strong class="typedef-required">required</strong></div> </th> <td> <div class="content"> <p>Versandarten-ID</p> </div> </td> </tr> </tbody> </table> <h6 class="title is-6">Query Parameters</h6> <table class="table is-property-list"> <tbody> <tr> <th scope="row"> include <div class="typedef-type">string, optional</div> </th> <td> <div class="content"> <p>Unter-Resourcen in Resource einbinden (Beispiel: <code>include=projekt</code>)</p> <p>Verfügbare Includes: <code>projekt</code></p> </div> </td> </tr> </tbody> </table> </div> <h5 class="title is-5">Response</h5> <div class="tabbable is-vertical" data-component="tabbable" data-tabbable-id="v1_versandarten__id__get_response"> <header class="tabs is-boxed"> <ul class="tabbable-tabs" data-tabbable-tabs="v1_versandarten__id__get_response"> <li> <a id="v1_versandarten__id__get_response_0" href="#v1_versandarten__id__get_response_0" data-tab="0"> <span class="status" data-code="200"></span> </a> </li> <li> <a id="v1_versandarten__id__get_response_1" href="#v1_versandarten__id__get_response_1" data-tab="1"> <span class="status" data-code="404"></span> </a> </li> </ul> </header> <div class="tabbable-contents" data-tabbable-contents="v1_versandarten__id__get_response"> <div data-tab-content="0"> <div class="content"> <p>Request erfolgreich</p> </div> <div class="tabbable" data-component="tabbable" data-tabbable-id="undefined_body"> <header class="tabs is-boxed"> <strong class="title is-6">Body</strong> <ul class="tabbable-tabs" data-tabbable-tabs="undefined_body"> <li> <a id="v1_versandarten__id__get_body_0" href="#v1_versandarten__id__get_body_0" data-tab="0"> application/json </a> </li> </ul> </header> <div class="tabbable-contents" data-tabbable-contents="undefined_body"> <div data-tab-content="0"> <h6 class="title is-6"></h6> <ul> <li> <details> <summary>Example</summary> <pre><code>{
|
|||
|
"data": {
|
|||
|
"id": "15",
|
|||
|
"type": "DHL",
|
|||
|
"bezeichnung": "DHL",
|
|||
|
"aktiv": "1",
|
|||
|
"projekt": "1",
|
|||
|
"modul": "",
|
|||
|
"paketmarke_drucker": "0",
|
|||
|
"export_drucker": "0",
|
|||
|
"ausprojekt": "1",
|
|||
|
"versandmail": "0",
|
|||
|
"geschaeftsbrief_vorlage": "0"
|
|||
|
}
|
|||
|
}
|
|||
|
</code></pre> </details> </li> </ul> </div> </div> </div> </div> <div data-tab-content="1"> <div class="content"> <p>Versandart wurde nicht gefunden</p> </div> <div class="tabbable" data-component="tabbable" data-tabbable-id="undefined_body"> <header class="tabs is-boxed"> <strong class="title is-6">Body</strong> <ul class="tabbable-tabs" data-tabbable-tabs="undefined_body"> <li> <a id="v1_versandarten__id__get_body_0" href="#v1_versandarten__id__get_body_0" data-tab="0"> application/json </a> </li> </ul> </header> <div class="tabbable-contents" data-tabbable-contents="undefined_body"> <div data-tab-content="0"> <h6 class="title is-6"></h6> <ul> <li> <details> <summary>Example</summary> <pre><code>{
|
|||
|
"error": {
|
|||
|
"code": 7452,
|
|||
|
"http_code": 404,
|
|||
|
"message": "Resource not found",
|
|||
|
"href": "http://www.example.com/api/docs.html#error-7452"
|
|||
|
}
|
|||
|
}
|
|||
|
</code></pre> </details> </li> </ul> </div> </div> </div> </div> </div> </div> </div> </div> <!-- end of resource block for GET /v1/versandarten/{id} --> <!-- begin of resource block for PUT /v1/versandarten/{id} --> <div id="v1_versandarten__id__put" class="group-endpoint" data-spy data-spy-parent="v1_versandarten__id_"> <header> <h4 class="title is-4 is-anchored"> Versandart bearbeiten <a class="anchor" href="#v1_versandarten__id__put">¶</a> <div class="subtitle is-6"> <strong class="method is-put">PUT</strong> <span class="value">/v1/versandarten/{id}</span> </div> </h4> <div class="content"> <p>Versandart bearbeiten</p> <p>Permission: <code>edit_shipping_method</code></p> </div> </header> <div> <h5 class="title is-5">Request</h5> <div class="indent"> <h6 class="title is-6">Path Variables</h6> <table class="table is-property-list"> <tbody> <tr> <th scope="row"> id <div class="typedef-type">integer, <strong class="typedef-required">required</strong></div> </th> <td> <div class="content"> <p>Versandarten-ID</p> </div> </td> </tr> </tbody> </table> <div class="tabbable" data-component="tabbable" data-tabbable-id="undefined_body"> <header class="tabs is-boxed"> <strong class="title is-6">Body</strong> <ul class="tabbable-tabs" data-tabbable-tabs="undefined_body"> <li> <a id="v1_versandarten__id__put_body_0" href="#v1_versandarten__id__put_body_0" data-tab="0"> application/json </a> </li> </ul> </header> <div class="tabbable-contents" data-tabbable-contents="undefined_body"> <div data-tab-content="0"> <h6 class="title is-6"></h6> <ul> <li> <details> <summary>Example</summary> <pre><code>{
|
|||
|
"type": "DHL_Paket",
|
|||
|
"bezeichnung": "DHL Paket",
|
|||
|
"aktiv": "1",
|
|||
|
"projekt": "1"
|
|||
|
}
|
|||
|
</code></pre> </details> </li> </ul> </div> </div> </div> </div> <h5 class="title is-5">Response</h5> <div class="tabbable is-vertical" data-component="tabbable" data-tabbable-id="v1_versandarten__id__put_response"> <header class="tabs is-boxed"> <ul class="tabbable-tabs" data-tabbable-tabs="v1_versandarten__id__put_response"> <li> <a id="v1_versandarten__id__put_response_0" href="#v1_versandarten__id__put_response_0" data-tab="0"> <span class="status" data-code="200"></span> </a> </li> </ul> </header> <div class="tabbable-contents" data-tabbable-contents="v1_versandarten__id__put_response"> <div data-tab-content="0"> <div class="content"> <p>Request erfolgreich; Aktualisierte Versandart wird zurückgeliefert</p> </div> <div class="tabbable" data-component="tabbable" data-tabbable-id="undefined_body"> <header class="tabs is-boxed"> <strong class="title is-6">Body</strong> <ul class="tabbable-tabs" data-tabbable-tabs="undefined_body"> <li> <a id="v1_versandarten__id__put_body_0" href="#v1_versandarten__id__put_body_0" data-tab="0"> application/json </a> </li> </ul> </header> <div class="tabbable-contents" data-tabbable-contents="undefined_body"> <div data-tab-content="0"> <h6 class="title is-6"></h6> <ul> <li> <details> <summary>Example</summary> <pre><code>{
|
|||
|
"success": true,
|
|||
|
"data": {
|
|||
|
"id": "15",
|
|||
|
"type": "DHL_Paket",
|
|||
|
"bezeichnung": "DHL Paket",
|
|||
|
"aktiv": "1",
|
|||
|
"projekt": "1",
|
|||
|
"modul": "",
|
|||
|
"paketmarke_drucker": "0",
|
|||
|
"export_drucker": "0",
|
|||
|
"ausprojekt": "1",
|
|||
|
"versandmail": "0",
|
|||
|
"geschaeftsbrief_vorlage": "0"
|
|||
|
}
|
|||
|
}
|
|||
|
</code></pre> </details> </li> </ul> </div> </div> </div> </div> </div> </div> </div> </div> <!-- end of resource block for PUT /v1/versandarten/{id} --> <!-- end of list of methods for /v1/versandarten/{id} --> </div> <div id="v1_wiedervorlagen" class="group" data-spy data-spy-parent="__all_resources"> <header class="group-header"> <div class="group-title"> <h3 class="title is-3">/v1/wiedervorlagen</h3> </div> <div class="content"> <p>Wiedervorlagen anlegen, bearbeiten und abrufen</p> </div> </header> <!-- list of methods for /v1/wiedervorlagen --> <!-- begin of resource block for GET /v1/wiedervorlagen --> <div id="v1_wiedervorlagen_get" class="group-endpoint" data-spy data-spy-parent="v1_wiedervorlagen"> <header> <h4 class="title is-4 is-anchored"> Wiedervorlagen abrufen <a class="anchor" href="#v1_wiedervorlagen_get">¶</a> <div class="subtitle is-6"> <strong class="method is-get">GET</strong> <span class="value">/v1/wiedervorlagen</span> </div> </h4> <div class="content"> <p>Wiedervorlagen abrufen</p> <p>Permission: <code>list_resubmissions</code></p> </div> </header> <div> <h5 class="title is-5">Request</h5> <div class="indent"> <h6 class="title is-6">Query Parameters</h6> <table class="table is-property-list"> <tbody> <tr> <th scope="row"> adresse <div class="typedef-type">integer, optional</div> </th> <td> <div class="content"> <p>Wiedervorlagen mit bestimmter Address-ID filtern (genaue Übereinstimmung)</p> </div> </td> </tr> <tr> <th scope="row"> adresse_mitarbeiter <div class="typedef-type">string, optional</div> </th> <td> <div class="content"> <p>Wiedervorlagen filtern die einem bestimmten Mitarbeiter (Address-ID) zugewiesen sind (genaue Übereinstimmung)</p> </div> </td> </tr> <tr> <th scope="row"> bearbeiter <div class="typedef-type">string, optional</div> </th> <td> <div class="content"> <p>Wiedervorlagen filtern die einem bestimmten Bearbeiter (Address-ID) zugewiesen sind (genaue Übereinstimmung)</p> </div> </td> </tr> <tr> <th scope="row"> projekt <div class="typedef-type">string, optional</div> </th> <td> <div class="content"> <p>Wiedervorlagen mit bestimmter Projekt-ID filtern (genaue Übereinstimmung)</p> </div> </td> </tr> <tr> <th scope="row"> stages <div class="typedef-type">string, optional</div> </th> <td> <div class="content"> <p>Wiedervorlagen mit bestimmter Stage-ID filtern (genaue Übereinstimmung)</p> </div> </td> </tr> <tr> <th scope="row"> id_ext <div class="typedef-type">integer, optional</div> </th> <td> <div class="content"> <p>Wiedervorlage mit externer ID filtern (genaue Übereinstimmung)</p> </div> </td> </tr> <tr> <th scope="row"> sort <div class="typedef-type">string, optional</div> </th> <td> <div class="content"> <p>Sortierung (Beispiel: <code>sort=iso,-bezeichnung</code>)</p> <p>Verfügbare Felder: <code>bezeichnung</code>, <code>datum_angelegt</code>, <code>zeit_angelegt</code>, <code>datum_erinnerung</code> , <code>zeit_erinnerung</code>, <code>stages</code>, <code>prio</code></p> </div> </td> </tr> <tr> <th scope="row"> page <div class="typedef-type">integer , default: <code>1</code>, maximum: 1000, optional</div> </th> <td> <div class="content"> <p>Seitenzahl</p> </div> </td> </tr> <tr> <th scope="row"> items <div class="typedef-type">integer , default: <code>20</code>, maximum: 1000, optional</div> </th> <td> <div class="content"> <p>Anzahl der Ergebnisse pro Seite</p> </div> </td> </tr> </tbody> </table> </div> </div> </div> <!-- end of resource block for GET /v1/wiedervorlagen --> <!-- begin of resource block for POST /v1/wiedervorlagen --> <div id="v1_wiedervorlagen_post" class="group-endpoint" data-spy data-spy-parent="v1_wiedervorlagen"> <header> <h4 class="title is-4 is-anchored"> Wiedervorlage anlegen <a class="anchor" href="#v1_wiedervorlagen_post">¶</a> <div class="subtitle is-6"> <strong class="method is-post">POST</strong> <span class="value">/v1/wiedervorlagen</span> </div> </h4> <div class="content"> <p>Wiedervorlage anlegen</p> <p>Permission: <code>create_resubmission</code></p> </div> </header> <div> <h5 class="title is-5">Request</h5> <div class="indent"
|
|||
|
"bearbeiter": 4,
|
|||
|
"bezeichnung": "Blumengießen",
|
|||
|
"beschreibung": "Alle Blumen im Büro gießen",
|
|||
|
"datum_erinnerung": "2019-12-31",
|
|||
|
"zeit_erinnerung": "23:59:59",
|
|||
|
"datum_abschluss": "2020-01-06",
|
|||
|
"adresse_mitarbeiter": 1
|
|||
|
}
|
|||
|
</code></pre> </details> </li> </ul> </div> </div> </div> </div> <h5 class="title is-5">Response</h5> <div class="tabbable is-vertical" data-component="tabbable" data-tabbable-id="v1_wiedervorlagen_post_response"> <header class="tabs is-boxed"> <ul class="tabbable-tabs" data-tabbable-tabs="v1_wiedervorlagen_post_response"> <li> <a id="v1_wiedervorlagen_post_response_0" href="#v1_wiedervorlagen_post_response_0" data-tab="0"> <span class="status" data-code="201"></span> </a> </li> </ul> </header> <div class="tabbable-contents" data-tabbable-contents="v1_wiedervorlagen_post_response"> <div data-tab-content="0"> <div class="content"> <p>Request erfolgreich; Angelegte Wiedervorlage wird zurückgeliefert</p> </div> <div class="tabbable" data-component="tabbable" data-tabbable-id="undefined_body"> <header class="tabs is-boxed"> <strong class="title is-6">Body</strong> <ul class="tabbable-tabs" data-tabbable-tabs="undefined_body"> <li> <a id="v1_wiedervorlagen_post_body_0" href="#v1_wiedervorlagen_post_body_0" data-tab="0"> application/json </a> </li> </ul> </header> <div class="tabbable-contents" data-tabbable-contents="undefined_body"> <div data-tab-content="0"> <h6 class="title is-6"></h6> <ul> <li> <details> <summary>Example</summary> <pre><code>{
|
|||
|
"success": true,
|
|||
|
"data": {
|
|||
|
"id": 49,
|
|||
|
"adresse": 0,
|
|||
|
"projekt": 0,
|
|||
|
"bezeichnung": "Blumengießen",
|
|||
|
"beschreibung": "Alle Blumen im Büro gießen",
|
|||
|
"bearbeiter": 4,
|
|||
|
"adresse_mitarbeiter": 1,
|
|||
|
"datum_erinnerung": "2019-12-31",
|
|||
|
"zeit_erinnerung": "23:59:59",
|
|||
|
"datum_abschluss": "2020-01-06",
|
|||
|
"oeffentlich": 0,
|
|||
|
"abgeschlossen": 0,
|
|||
|
"prio": 0,
|
|||
|
"stages": 0,
|
|||
|
"color": "",
|
|||
|
"id_ext": null
|
|||
|
}
|
|||
|
}
|
|||
|
</code></pre> </details> </li> </ul> </div> </div> </div> </div> </div> </div> </div> </div> <!-- end of resource block for POST /v1/wiedervorlagen --> <!-- end of list of methods for /v1/wiedervorlagen --> <!-- list of methods for /v1/wiedervorlagen/{id} --> <span id="v1_wiedervorlagen__id_" class="group-resource-group-marker" data-spy data-spy-parent="v1_wiedervorlagen"></span> <!-- begin of resource block for GET /v1/wiedervorlagen/{id} --> <div id="v1_wiedervorlagen__id__get" class="group-endpoint" data-spy data-spy-parent="v1_wiedervorlagen__id_"> <header> <h4 class="title is-4 is-anchored"> Einzelne Wiedervorlage abrufen <a class="anchor" href="#v1_wiedervorlagen__id__get">¶</a> <div class="subtitle is-6"> <strong class="method is-get">GET</strong> <span class="value">/v1/wiedervorlagen/{id}</span> </div> </h4> <div class="content"> <p>Einzelne Wiedervorlage abrufen</p> <p>Permission: <code>view_resubmission</code></p> </div> </header> <div> <h5 class="title is-5">Request</h5> <div class="indent"> <h6 class="title is-6">Path Variables</h6> <table class="table is-property-list"> <tbody> <tr> <th scope="row"> id <div class="typedef-type">integer, <strong class="typedef-required">required</strong></div> </th> <td> <div class="content"> <p>Wiedervorlage-ID</p> </div> </td> </tr> </tbody> </table> </div> <h5 class="title is-5">Response</h5> <div class="tabbable is-vertical" data-component="tabbable" data-tabbable-id="v1_wiedervorlagen__id__get_response"> <header class="tabs is-boxed"> <ul class="tabbable-tabs" data-tabbable-tabs="v1_wiedervorlagen__id__get_response"> <li> <a id="v1_wiedervorlagen__id__get_response_0" href="#v1_wiedervorlagen__id__get_response_0" data-tab="0"> <span class="status" data-code="200"></span> </a> </li> <li> <a id="v1_wiedervorlagen__id__get_response_1" href="#v1_wiedervorlagen__id__get_response_1" data-tab="1"> <span class="status" data-code="404"></span> </a> </li> </ul> </header> <div class="tabbable-contents" data-tabbable-contents="v1_wiedervorlagen__id__get_response"> <div data-tab-content="0"> <div class="content"> <p>Request erfolgreich</p> </div> <div class="tabbable" data-component="tabbable" data-tabbable-id="undefined_body"> <header class="tabs is-boxed"> <strong class="title is-6">Body</strong> <ul class="tabbable-tabs" data-tabbable-tabs="undefined_body"> <li> <a id="v1_wiedervorlagen__id__get_body_0" href="#v1_wiedervorlagen__id__get_body_0" data-tab="0"> application/json </a> </li> </ul> </header> <div class="tabbable-contents" data-tabbable-contents="undefined_body"> <div data-tab-content="0"> <h6 class="title is-6"></h6> <ul> <li> <details> <summary>Example</summary> <pre><code>{
|
|||
|
"data": {
|
|||
|
"id": 49,
|
|||
|
"adresse": 1,
|
|||
|
"projekt": 1,
|
|||
|
"bezeichnung": "Blumengießen",
|
|||
|
"beschreibung": "Alle Blumen im Büro gießen",
|
|||
|
"ergebnis": "",
|
|||
|
"betrag": "5.00",
|
|||
|
"erinnerung_per_mail": 0,
|
|||
|
"bearbeiter": 4,
|
|||
|
"adresse_mitarbeiter": 1,
|
|||
|
"datum_angelegt": null,
|
|||
|
"zeit_angelegt": null,
|
|||
|
"datum_erinnerung": "2019-12-31",
|
|||
|
"zeit_erinnerung": "23:59:00",
|
|||
|
"datum_abschluss": "2020-01-06",
|
|||
|
"oeffentlich": 0,
|
|||
|
"abgeschlossen": 1,
|
|||
|
"chance": 100,
|
|||
|
"prio": 0,
|
|||
|
"stages": 2,
|
|||
|
"color": "",
|
|||
|
"id_ext": null
|
|||
|
}
|
|||
|
}
|
|||
|
</code></pre> </details> </li> </ul> </div> </div> </div> </div> <div data-tab-content="1"> <div class="content"> <p>Wiedervorlage wurde nicht gefunden</p> </div> <div class="tabbable" data-component="tabbable" data-tabbable-id="undefined_body"> <header class="tabs is-boxed"> <strong class="title is-6">Body</strong> <ul class="tabbable-tabs" data-tabbable-tabs="undefined_body"> <li> <a id="v1_wiedervorlagen__id__get_body_0" href="#v1_wiedervorlagen__id__get_body_0" data-tab="0"> application/json </a> </li> </ul> </header> <div class="tabbable-contents" data-tabbable-contents="undefined_body"> <div data-tab-content="0"> <h6 class="title is-6"></h6> <ul> <li> <details> <summary>Example</summary> <pre><code>{
|
|||
|
"error": {
|
|||
|
"code": 7452,
|
|||
|
"http_code": 404,
|
|||
|
"message": "Resource not found",
|
|||
|
"href": "http://www.example.com/api/docs.html#error-7452"
|
|||
|
}
|
|||
|
}
|
|||
|
</code></pre> </details> </li> </ul> </div> </div> </div> </div> </div> </div> </div> </div> <!-- end of resource block for GET /v1/wiedervorlagen/{id} --> <!-- begin of resource block for PUT /v1/wiedervorlagen/{id} --> <div id="v1_wiedervorlagen__id__put" class="group-endpoint" data-spy data-spy-parent="v1_wiedervorlagen__id_"> <header> <h4 class="title is-4 is-anchored"> Wiedervorlage bearbeiten <a class="anchor" href="#v1_wiedervorlagen__id__put">¶</a> <div class="subtitle is-6"> <strong class="method is-put">PUT</strong> <span class="value">/v1/wiedervorlagen/{id}</span> </div> </h4> <div class="content"> <p>Wiedervorlage bearbeiten</p> <p>Permission: <code>edit_resubmission</code></p> </div> </header> <div> <h5 class="title is-5">Request</h5> <div class="indent"> <h6 class="title is-6">Path Variables</h6> <table class="table is-property-list"> <tbody> <tr> <th scope="row"> id <div class="typedef-type">integer, <strong class="typedef-required">required</strong></div> </th> <td> <div class="content"> <p>Wiedervorlage-ID</p> </div> </td> </tr> </tbody> </table> <div class="tabbable" data-component="tabbable" data-tabbable-id="undefined_body"> <header class="tabs is-boxed"> <strong class="title is-6">Body</strong> <ul class="tabbable-tabs" data-tabbable-tabs="undefined_body"> <li> <a id="v1_wiedervorlagen__id__put_body_0" href="#v1_wiedervorlagen__id__put_body_0" data-tab="0"> application/json </a> </li> </ul> </header> <div class="tabbable-contents" data-tabbable-contents="undefined_body"> <div data-tab-content="0"> <h6 class="title is-6"></h6> <ul> <li> <details> <summary>Example</summary> <pre><code>{
|
|||
|
"bearbeiter": 1,
|
|||
|
"bezeichnung": "Blumengießen",
|
|||
|
"datum_erinnerung": "2019-12-31",
|
|||
|
"zeit_erinnerung": "23:59:59"
|
|||
|
}
|
|||
|
</code></pre> </details> </li> </ul> </div> </div> </div> </div> <h5 class="title is-5">Response</h5> <div class="tabbable is-vertical" data-component="tabbable" data-tabbable-id="v1_wiedervorlagen__id__put_response"> <header class="tabs is-boxed"> <ul class="tabbable-tabs" data-tabbable-tabs="v1_wiedervorlagen__id__put_response"> <li> <a id="v1_wiedervorlagen__id__put_response_0" href="#v1_wiedervorlagen__id__put_response_0" data-tab="0"> <span class="status" data-code="200"></span> </a> </li> </ul> </header> <div class="tabbable-contents" data-tabbable-contents="v1_wiedervorlagen__id__put_response"> <div data-tab-content="0"> <div class="content"> <p>Request erfolgreich; Aktualisierte Wiedervorlage wird zurückgeliefert</p> </div> <div class="tabbable" data-component="tabbable" data-tabbable-id="undefined_body"> <header class="tabs is-boxed"> <strong class="title is-6">Body</strong> <ul class="tabbable-tabs" data-tabbable-tabs="undefined_body"> <li> <a id="v1_wiedervorlagen__id__put_body_0" href="#v1_wiedervorlagen__id__put_body_0" data-tab="0"> application/json </a> </li> </ul> </header> <div class="tabbable-contents" data-tabbable-contents="undefined_body"> <div data-tab-content="0"> <h6 class="title is-6"></h6> <ul> <li> <details> <summary>Example</summary> <pre><code>{
|
|||
|
"data": {
|
|||
|
"id": 49,
|
|||
|
"adresse": 1,
|
|||
|
"projekt": 1,
|
|||
|
"bezeichnung": "Blumengießen",
|
|||
|
"beschreibung": "Alle Blumen im Büro gießen",
|
|||
|
"ergebnis": "",
|
|||
|
"betrag": "5.00",
|
|||
|
"erinnerung_per_mail": 0,
|
|||
|
"bearbeiter": 1,
|
|||
|
"adresse_mitarbeiter": 1,
|
|||
|
"datum_angelegt": null,
|
|||
|
"zeit_angelegt": null,
|
|||
|
"datum_erinnerung": "2019-12-31",
|
|||
|
"zeit_erinnerung": "23:59:00",
|
|||
|
"datum_abschluss": "2020-01-06",
|
|||
|
"oeffentlich": 0,
|
|||
|
"abgeschlossen": 1,
|
|||
|
"chance": 100,
|
|||
|
"prio": 0,
|
|||
|
"stages": 2,
|
|||
|
"color": "",
|
|||
|
"id_ext": null
|
|||
|
}
|
|||
|
}
|
|||
|
</code></pre> </details> </li> </ul> </div> </div> </div> </div> </div> </div> </div> </div> <!-- end of resource block for PUT /v1/wiedervorlagen/{id} --> <!-- end of list of methods for /v1/wiedervorlagen/{id} --> </div> <div id="v1_zahlungsweisen" class="group" data-spy data-spy-parent="__all_resources"> <header class="group-header"> <div class="group-title"> <h3 class="title is-3">/v1/zahlungsweisen</h3> </div> <div class="content"> <p>Zahlungsweisen anlegen, bearbeiten und abrufen</p> </div> </header> <!-- list of methods for /v1/zahlungsweisen --> <!-- begin of resource block for GET /v1/zahlungsweisen --> <div id="v1_zahlungsweisen_get" class="group-endpoint" data-spy data-spy-parent="v1_zahlungsweisen"> <header> <h4 class="title is-4 is-anchored"> Zahlungsweisen abrufen <a class="anchor" href="#v1_zahlungsweisen_get">¶</a> <div class="subtitle is-6"> <strong class="method is-get">GET</strong> <span class="value">/v1/zahlungsweisen</span> </div> </h4> <div class="content"> <p>Zahlungsweisen abrufen</p> <p>Permission: <code>list_payment_methods</code></p> </div> </header> <div> <h5 class="title is-5">Request</h5> <div class="indent"> <h6 class="title is-6">Query Parameters</h6> <table class="table is-property-list"> <tbody> <tr> <th scope="row"> bezeichnung <div class="typedef-type">string, optional</div> </th> <td> <div class="content"> <p>Zahlungsweise mit bestimmter Bezeichnung suchen (ungefähre Übereinstimmung)</p> </div> </td> </tr> <tr> <th scope="row"> bezeichnung_exakt <div class="typedef-type">string, optional</div> </th> <td> <div class="content"> <p>Zahlungsweise mit bestimmter Bezeichnung suchen (genaue Übereinstimmung)</p> </div> </td> </tr> <tr> <th scope="row"> type <div class="typedef-type">string, optional</div> </th> <td> <div class="content"> <p>Nach bestimmten Typ filtern (ungefähre Übereinstimmung)</p> </div> </td> </tr> <tr> <th scope="row"> type_exakt <div class="typedef-type">string, optional</div> </th> <td> <div class="content"> <p>Nach bestimmten Typ filtern (genaue Übereinstimmung)</p> </div> </td> </tr> <tr> <th scope="row"> projekt <div class="typedef-type">integer, optional</div> </th> <td> <div class="content"> <p>Zahlungsweise eines Projekts filtern (genaue Übereinstimmung)</p> </div> </td> </tr> <tr> <th scope="row"> modul <div class="typedef-type">integer, optional</div> </th> <td> <div class="content"> <p>Nach bestimmtem Modul filtern (genaue Übereinstimmung)</p> </div> </td> </tr> <tr> <th scope="row"> aktiv <div class="typedef-type">integer, optional</div> </th> <td> <div class="content"> <p>Aktive/Inaktive Zahlungsweise filtern (1 = aktiv / 0 = inaktiv)</p> </div> </td> </tr> <tr> <th scope="row"> sort <div class="typedef-type">string, optional</div> </th> <td> <div class="content"> <p>Sortierung (Beispiel: <code>sort=type,-bezeichnung</code>)</p> <p>Verfügbare Felder: <code>bezeichnung</code>, <code>type</code>, <code>projekt</code>, <code>modul</code>, <code>aktiv</code></p> </div> </td> </tr> <tr> <th scope="row"> include <div class="typedef-type">string, optional</div> </th> <td> <div class="content"> <p>Unter-Resourcen in Resource einbinden (Beispiel: <code>include=projekt</code>)</p> <p>Verfügbare Includes: <code>projekt</code></p> </div> </td> </tr> <tr> <th scope="row"> page <div class="typedef-type">integer , default: <code>1</code>, maximum: 1000, optional</div> </th> <td> <div class="content"> <p>Seitenzahl</p> </div> </td> </tr> <tr> <th scope="row"> items <div class="typedef-type">integer , default: <code>20</code>, maximum: 1000, optional</div> </th> <td> <div class="content"> <p>Anzahl der Ergebnisse pro Seite</p> </div> </td> </tr> </tbody> </table> </div> </div> </div> <!-- end of resource block for GET /v1/zahlungsweisen --> <!-- begin of resource block for POST /v1/zahlungsweisen --> <div id="v1_zahlungsweisen_post" class="group-endpoint" data-spy data-spy-parent="v1_zahlungsweisen"> <header> <h4 class="title is-4 is-anchored"> Zahlungsweisen anlegen <a class="anchor" href="#v1_zahlungsweisen_post">¶</a> <div class="subtitle is-6"> <strong class
|
|||
|
"type": "vorkasse",
|
|||
|
"bezeichnung": "Vorkasse",
|
|||
|
"verhalten": "vorkasse",
|
|||
|
"aktiv": 1,
|
|||
|
"projekt": 1
|
|||
|
}
|
|||
|
</code></pre> </details> </li> </ul> </div> </div> </div> </div> <h5 class="title is-5">Response</h5> <div class="tabbable is-vertical" data-component="tabbable" data-tabbable-id="v1_zahlungsweisen_post_response"> <header class="tabs is-boxed"> <ul class="tabbable-tabs" data-tabbable-tabs="v1_zahlungsweisen_post_response"> <li> <a id="v1_zahlungsweisen_post_response_0" href="#v1_zahlungsweisen_post_response_0" data-tab="0"> <span class="status" data-code="201"></span> </a> </li> </ul> </header> <div class="tabbable-contents" data-tabbable-contents="v1_zahlungsweisen_post_response"> <div data-tab-content="0"> <div class="content"> <p>Request erfolgreich; Angelegte Zahlungsweise wird zurückgeliefert</p> </div> <div class="tabbable" data-component="tabbable" data-tabbable-id="undefined_body"> <header class="tabs is-boxed"> <strong class="title is-6">Body</strong> <ul class="tabbable-tabs" data-tabbable-tabs="undefined_body"> <li> <a id="v1_zahlungsweisen_post_body_0" href="#v1_zahlungsweisen_post_body_0" data-tab="0"> application/json </a> </li> </ul> </header> <div class="tabbable-contents" data-tabbable-contents="undefined_body"> <div data-tab-content="0"> <h6 class="title is-6"></h6> <ul> <li> <details> <summary>Example</summary> <pre><code>{
|
|||
|
"success": true,
|
|||
|
"data": {
|
|||
|
"id": "10",
|
|||
|
"type": "vorkasse",
|
|||
|
"bezeichnung": "Vorkasse",
|
|||
|
"freitext": "",
|
|||
|
"aktiv": "1",
|
|||
|
"automatischbezahlt": "0",
|
|||
|
"automatischbezahltverbindlichkeit": "0",
|
|||
|
"projekt": "1",
|
|||
|
"vorkasse": "0",
|
|||
|
"verhalten": "vorkasse",
|
|||
|
"modul": ""
|
|||
|
}
|
|||
|
}
|
|||
|
</code></pre> </details> </li> </ul> </div> </div> </div> </div> </div> </div> </div> </div> <!-- end of resource block for POST /v1/zahlungsweisen --> <!-- end of list of methods for /v1/zahlungsweisen --> <!-- list of methods for /v1/zahlungsweisen/{id} --> <span id="v1_zahlungsweisen__id_" class="group-resource-group-marker" data-spy data-spy-parent="v1_zahlungsweisen"></span> <!-- begin of resource block for GET /v1/zahlungsweisen/{id} --> <div id="v1_zahlungsweisen__id__get" class="group-endpoint" data-spy data-spy-parent="v1_zahlungsweisen__id_"> <header> <h4 class="title is-4 is-anchored"> Einzelnen Zahlungsweise abrufen <a class="anchor" href="#v1_zahlungsweisen__id__get">¶</a> <div class="subtitle is-6"> <strong class="method is-get">GET</strong> <span class="value">/v1/zahlungsweisen/{id}</span> </div> </h4> <div class="content"> <p>Einzelnen Zahlungsweise abrufen</p> <p>Permission: <code>view_payment_method</code></p> </div> </header> <div> <h5 class="title is-5">Request</h5> <div class="indent"> <h6 class="title is-6">Path Variables</h6> <table class="table is-property-list"> <tbody> <tr> <th scope="row"> id <div class="typedef-type">integer, <strong class="typedef-required">required</strong></div> </th> <td> <div class="content"> <p>Zahlungsweisen-ID</p> </div> </td> </tr> </tbody> </table> <h6 class="title is-6">Query Parameters</h6> <table class="table is-property-list"> <tbody> <tr> <th scope="row"> include <div class="typedef-type">string, optional</div> </th> <td> <div class="content"> <p>Unter-Resourcen in Resource einbinden (Beispiel: <code>include=projekt</code>)</p> <p>Verfügbare Includes: <code>projekt</code></p> </div> </td> </tr> </tbody> </table> </div> <h5 class="title is-5">Response</h5> <div class="tabbable is-vertical" data-component="tabbable" data-tabbable-id="v1_zahlungsweisen__id__get_response"> <header class="tabs is-boxed"> <ul class="tabbable-tabs" data-tabbable-tabs="v1_zahlungsweisen__id__get_response"> <li> <a id="v1_zahlungsweisen__id__get_response_0" href="#v1_zahlungsweisen__id__get_response_0" data-tab="0"> <span class="status" data-code="200"></span> </a> </li> <li> <a id="v1_zahlungsweisen__id__get_response_1" href="#v1_zahlungsweisen__id__get_response_1" data-tab="1"> <span class="status" data-code="404"></span> </a> </li> </ul> </header> <div class="tabbable-contents" data-tabbable-contents="v1_zahlungsweisen__id__get_response"> <div data-tab-content="0"> <div class="content"> <p>Request erfolgreich</p> </div> <div class="tabbable" data-component="tabbable" data-tabbable-id="undefined_body"> <header class="tabs is-boxed"> <strong class="title is-6">Body</strong> <ul class="tabbable-tabs" data-tabbable-tabs="undefined_body"> <li> <a id="v1_zahlungsweisen__id__get_body_0" href="#v1_zahlungsweisen__id__get_body_0" data-tab="0"> application/json </a> </li> </ul> </header> <div class="tabbable-contents" data-tabbable-contents="undefined_body"> <div data-tab-content="0"> <h6 class="title is-6"></h6> <ul> <li> <details> <summary>Example</summary> <pre><code>{
|
|||
|
"data": {
|
|||
|
"id": "1",
|
|||
|
"type": "vorkasse",
|
|||
|
"bezeichnung": "Vorkasse",
|
|||
|
"freitext": "",
|
|||
|
"aktiv": "1",
|
|||
|
"automatischbezahlt": "0",
|
|||
|
"automatischbezahltverbindlichkeit": "0",
|
|||
|
"projekt": "0",
|
|||
|
"vorkasse": "0",
|
|||
|
"verhalten": "vorkasse",
|
|||
|
"modul": ""
|
|||
|
}
|
|||
|
}
|
|||
|
</code></pre> </details> </li> </ul> </div> </div> </div> </div> <div data-tab-content="1"> <div class="content"> <p>Zahlungsweise wurde nicht gefunden</p> </div> <div class="tabbable" data-component="tabbable" data-tabbable-id="undefined_body"> <header class="tabs is-boxed"> <strong class="title is-6">Body</strong> <ul class="tabbable-tabs" data-tabbable-tabs="undefined_body"> <li> <a id="v1_zahlungsweisen__id__get_body_0" href="#v1_zahlungsweisen__id__get_body_0" data-tab="0"> application/json </a> </li> </ul> </header> <div class="tabbable-contents" data-tabbable-contents="undefined_body"> <div data-tab-content="0"> <h6 class="title is-6"></h6> <ul> <li> <details> <summary>Example</summary> <pre><code>{
|
|||
|
"error": {
|
|||
|
"code": 7452,
|
|||
|
"http_code": 404,
|
|||
|
"message": "Resource not found",
|
|||
|
"href": "http://www.example.com/api/docs.html#error-7452"
|
|||
|
}
|
|||
|
}
|
|||
|
</code></pre> </details> </li> </ul> </div> </div> </div> </div> </div> </div> </div> </div> <!-- end of resource block for GET /v1/zahlungsweisen/{id} --> <!-- begin of resource block for PUT /v1/zahlungsweisen/{id} --> <div id="v1_zahlungsweisen__id__put" class="group-endpoint" data-spy data-spy-parent="v1_zahlungsweisen__id_"> <header> <h4 class="title is-4 is-anchored"> Zahlungsweise bearbeiten <a class="anchor" href="#v1_zahlungsweisen__id__put">¶</a> <div class="subtitle is-6"> <strong class="method is-put">PUT</strong> <span class="value">/v1/zahlungsweisen/{id}</span> </div> </h4> <div class="content"> <p>Zahlungsweise bearbeiten</p> <p>Permission: <code>edit_payment_method</code></p> </div> </header> <div> <h5 class="title is-5">Request</h5> <div class="indent"> <h6 class="title is-6">Path Variables</h6> <table class="table is-property-list"> <tbody> <tr> <th scope="row"> id <div class="typedef-type">integer, <strong class="typedef-required">required</strong></div> </th> <td> <div class="content"> <p>Zahlungsweisen-ID</p> </div> </td> </tr> </tbody> </table> <div class="tabbable" data-component="tabbable" data-tabbable-id="undefined_body"> <header class="tabs is-boxed"> <strong class="title is-6">Body</strong> <ul class="tabbable-tabs" data-tabbable-tabs="undefined_body"> <li> <a id="v1_zahlungsweisen__id__put_body_0" href="#v1_zahlungsweisen__id__put_body_0" data-tab="0"> application/json </a> </li> </ul> </header> <div class="tabbable-contents" data-tabbable-contents="undefined_body"> <div data-tab-content="0"> <h6 class="title is-6"></h6> <ul> <li> <details> <summary>Example</summary> <pre><code>{
|
|||
|
"type": "lastschrift",
|
|||
|
"bezeichnung": "Lastschrift",
|
|||
|
"aktiv": "1",
|
|||
|
"projekt": "1",
|
|||
|
"verhalten": "lastschrift"
|
|||
|
}
|
|||
|
</code></pre> </details> </li> </ul> </div> </div> </div> </div> <h5 class="title is-5">Response</h5> <div class="tabbable is-vertical" data-component="tabbable" data-tabbable-id="v1_zahlungsweisen__id__put_response"> <header class="tabs is-boxed"> <ul class="tabbable-tabs" data-tabbable-tabs="v1_zahlungsweisen__id__put_response"> <li> <a id="v1_zahlungsweisen__id__put_response_0" href="#v1_zahlungsweisen__id__put_response_0" data-tab="0"> <span class="status" data-code="200"></span> </a> </li> </ul> </header> <div class="tabbable-contents" data-tabbable-contents="v1_zahlungsweisen__id__put_response"> <div data-tab-content="0"> <div class="content"> <p>Request erfolgreich; Aktualisierte Zahlungsweise wird zurückgeliefert</p> </div> <div class="tabbable" data-component="tabbable" data-tabbable-id="undefined_body"> <header class="tabs is-boxed"> <strong class="title is-6">Body</strong> <ul class="tabbable-tabs" data-tabbable-tabs="undefined_body"> <li> <a id="v1_zahlungsweisen__id__put_body_0" href="#v1_zahlungsweisen__id__put_body_0" data-tab="0"> application/json </a> </li> </ul> </header> <div class="tabbable-contents" data-tabbable-contents="undefined_body"> <div data-tab-content="0"> <h6 class="title is-6"></h6> <ul> <li> <details> <summary>Example</summary> <pre><code>{
|
|||
|
"success": true,
|
|||
|
"data": {
|
|||
|
"id": "10",
|
|||
|
"type": "lastschrift",
|
|||
|
"bezeichnung": "Lastschrift",
|
|||
|
"freitext": "",
|
|||
|
"aktiv": "1",
|
|||
|
"automatischbezahlt": "0",
|
|||
|
"automatischbezahltverbindlichkeit": "0",
|
|||
|
"projekt": "1",
|
|||
|
"vorkasse": "0",
|
|||
|
"verhalten": "lastschrift",
|
|||
|
"modul": ""
|
|||
|
}
|
|||
|
}
|
|||
|
</code></pre> </details> </li> </ul> </div> </div> </div> </div> </div> </div> </div> </div> <!-- end of resource block for PUT /v1/zahlungsweisen/{id} --> <!-- end of list of methods for /v1/zahlungsweisen/{id} --> </div> </section> <section id="__all_types" class="section" data-spy> <h2 class="title is-2">Type Reference</h2> </section> </main> </div> </div> </div> <script src="./assets/docs.js"></script> </body> </html>
|