# API-Referenz Produkte (App-Kennung produkte) > 42 App-Tools. Aufruf immer mit `POST /api/app-tools`, Header `X-API-KEY`, Body `{"name": "", "input": {…}}`. Welche Tools ein Schlüssel nutzen darf, zeigt `GET /api/app-tools` der Instanz. Quelle: https://support.unitedsynergy.com/api/referenz/produkte/ ## Datenobjekte Die Standard-Aktionen je Datenobjekt: list (suchen und blättern), get (einen Datensatz lesen), create, update und delete. Nicht jedes Objekt bietet alle fünf an. ### Artikel (Produkte): `produkte.artikel.*` #### produkte.artikel.list Liste/Suche: Artikel (Produkte) - Art: Lesen - Rechte: Artikel lesen - Datenklassen: B (intern) - Eingabe: - `search` (string): Freitextsuche - `filters` (object): Feld=Wert-Filter - `limit` (integer) - `offset` (integer) - `orderBy` (string) - Beispiel: `{"name":"produkte.artikel.list","input":{}}` #### produkte.artikel.get Detail: Artikel (Produkte) - Art: Lesen - Rechte: Artikel lesen - Datenklassen: B (intern) - Eingabe: - `id` (string, Pflicht) - Beispiel: `{"name":"produkte.artikel.get","input":{"id":""}}` #### produkte.artikel.create Anlegen: Artikel (Produkte) - Art: Anlegen, vor dem Ausführen ausdrücklich bestätigen lassen - Rechte: Artikel anlegen - Datenklassen: B (intern) - Eingabe: - `bezeichnung` (string, Pflicht) - `nummer` (string) - `ean` (string) - `herstellerArtikelnummer` (string) - `warengruppe` (string) - `statusCode` (string) - `beschreibung` (string) - `steuersatz` (number) - `bestand` (number) - `mindestbestand` (number) - `sollbestand` (number) - `lagerartikel` (boolean) - `planbar` (boolean) - `shopAktiv` (boolean) - `gesperrt` (boolean) - `aktiv` (boolean) - Beispiel: `{"name":"produkte.artikel.create","input":{"bezeichnung":""}}` #### produkte.artikel.update Ändern: Artikel (Produkte) - Art: Ändern, vor dem Ausführen ausdrücklich bestätigen lassen - Rechte: Artikel ändern - Datenklassen: B (intern) - Eingabe: - `id` (string, Pflicht): ID des Datensatzes - `bezeichnung` (string) - `nummer` (string) - `ean` (string) - `herstellerArtikelnummer` (string) - `warengruppe` (string) - `statusCode` (string) - `beschreibung` (string) - `steuersatz` (number) - `bestand` (number) - `mindestbestand` (number) - `sollbestand` (number) - `lagerartikel` (boolean) - `planbar` (boolean) - `shopAktiv` (boolean) - `gesperrt` (boolean) - `aktiv` (boolean) - Beispiel: `{"name":"produkte.artikel.update","input":{"id":""}}` #### produkte.artikel.delete Löschen: Artikel (Produkte) - Art: Löschen, vor dem Ausführen ausdrücklich bestätigen lassen - Rechte: Artikel löschen - Datenklassen: B (intern) - Eingabe: - `id` (string, Pflicht) - Beispiel: `{"name":"produkte.artikel.delete","input":{"id":""}}` ## Wertelisten Auswahllisten der App wie Status, Arten oder Kategorien. Du pflegst sie mit denselben fünf Aktionen. Die Werte (code) nutzt du in den Feldern der Datenobjekte. ### Artikel-Status: `produkte.status.*` #### produkte.status.list Liste/Suche: Katalog „Artikel-Status" (produkte) - Art: Lesen - Rechte: Einstellungen verwalten - Datenklassen: B (intern) - Eingabe: - `onlyAktiv` (boolean): Nur aktive Einträge - Beispiel: `{"name":"produkte.status.list","input":{}}` #### produkte.status.get Detail: Katalog „Artikel-Status" (produkte) - Art: Lesen - Rechte: Einstellungen verwalten - Datenklassen: B (intern) - Eingabe: - `id` (string, Pflicht) - Beispiel: `{"name":"produkte.status.get","input":{"id":""}}` #### produkte.status.create Anlegen: Katalog „Artikel-Status" (produkte) - Art: Anlegen, vor dem Ausführen ausdrücklich bestätigen lassen - Rechte: Einstellungen verwalten - Datenklassen: B (intern) - Eingabe: - `label` (string, Pflicht): Anzeige-Text - `code` (string): Optional, sonst aus label abgeleitet. Immutable - `color` (string): Tailwind-Paar, z.B. "bg-blue-100 text-blue-700" - `icon` (string): Lucide-Icon-Name - `beschreibung` (string) - Beispiel: `{"name":"produkte.status.create","input":{"label":"