# Custom Tags REST API ## Übersicht Das Tag-System ermöglicht es, benutzerdefinierte Tags zu erstellen und per REST-API zu aktivieren/deaktivieren. ## Interne Management APIs (Port 3000) ### Tags auflisten ``` ## Hinweis Die in früheren Versionen vorhandene Management-Weboberfläche (Port 3000) und die zugehörigen internen REST-APIs wurden entfernt. Die folgenden Management-APIs sind ohne diese Komponente nicht verfügbar. Wenn Sie ähnliche Funktionen benötigen, implementieren Sie bitte separate Endpunkte in Ihrem eigenen Service oder re-integrieren Sie ein Management-Modul. ``` ### Neuen Tag erstellen ``` POST http://localhost:3000/api/tags Content-Type: application/json { "id": "unique_id", "name": "Mein Custom Tag", "tagName": "MY_CUSTOM_TAG", "enabled": false, "content": "Inhalt des Tags", "position": "header", "type": "text" } ``` ### Tag aktualisieren ``` PUT http://localhost:3000/api/tags/{id} Content-Type: application/json { "content": "Neuer Inhalt", "enabled": true } ``` ### Tag aktivieren/deaktivieren ``` POST http://localhost:3000/api/tags/{id}/toggle Content-Type: application/json { "enabled": true } ``` ### Tag löschen ``` DELETE http://localhost:3000/api/tags/{id} ``` ## Externe REST APIs (Port 3000) ### Alle verfügbaren Tags auflisten ``` ## Externe REST APIs Die externen Management-APIs sind nicht Teil dieses Kern-Servers. Falls benötigt, schreiben Sie bitte eine separate Management-API, die mit diesem Server kommuniziert. Response: [ { "tagName": "HEADER_CONTENT", "name": "Header", "enabled": false, "type": "text", "position": "top" } ] ``` ### Tag aktivieren (Extern) ``` POST http://localhost:3000/api/public/tags/{TAG_NAME}/activate Example: POST http://localhost:3000/api/public/tags/HEADER_CONTENT/activate Response: { "success": true, "message": "Tag HEADER_CONTENT aktiviert", "tag": { "id": "header", "tagName": "HEADER_CONTENT", "enabled": true, ... } } ``` ### Tag deaktivieren (Extern) ``` POST http://localhost:3000/api/public/tags/{TAG_NAME}/deactivate Example: POST http://localhost:3000/api/public/tags/HEADER_CONTENT/deactivate ``` ## Tag-Typen - **text**: Einfacher Text-Inhalt - **image**: Bild-Datei (Base64 oder URL) - **html**: HTML-Formatierter Inhalt ## Positionen - **top**: Am Anfang des Dokuments - **bottom**: Am Ende des Dokuments - **header**: Im Kopfbereich - **footer**: Im Fußbereich - **background**: Als Hintergrund/Wasserzeichen - **end**: Ganz am Ende ## Beispiel-Integration ```bash # Tag extern aktivieren curl -X POST http://localhost:3000/api/public/tags/SIGNATURE/activate # Tag extern deaktivieren curl -X POST http://localhost:3000/api/public/tags/SIGNATURE/deactivate # Alle verfügbaren Tags anzeigen curl http://localhost:3000/api/public/tags ``` ## Standard-Tags Das System kommt mit diesen vordefinierten Tags: 1. **HEADER_CONTENT** - Header-Inhalt 2. **FOOTER_CONTENT** - Footer-Inhalt 3. **SIGNATURE** - Unterschrift 4. **COMPANY_LOGO** - Firmen-Logo (Bild) 5. **WATERMARK** - Wasserzeichen (Bild) Alle Tags können über das Web-GUI oder die REST-APIs verwaltet werden.