Categories Endpoint
Endpoint
Categories
Produktkategorien mit Hierarchie-Unterstützung verwalten.
Übersicht
| Operation | Method | Endpoint | Scope |
|---|---|---|---|
| Export | GET | /xpanel/xoport/export/json/categories | categories:read |
| Import | POST | /xpanel/xoport/import/json/categories | categories:write |
| Update | PUT | /xpanel/xoport/import/json/categories | categories:write |
| Delete | DELETE | /xpanel/xoport/delete/json/categories | categories:delete |
Export (GET)
Query-Parameter
| Parameter | Typ | Beschreibung |
|---|---|---|
categories_id | int | Einzelne Kategorie exportieren |
parent_id | int | Nur Unterkategorien dieser ID |
limit | int | Max. Anzahl (Default: 100) |
offset | int | Startposition |
Response-Felder
categories_id- Eindeutige IDparent_id- Eltern-Kategorie (0 = Wurzel)categories_status- Aktiv (1) oder inaktiv (0)sort_order- Sortierreihenfolgelanguages{}- Pro Sprache: name, heading, short_description, description, title_tag, desc_tag
Import (POST/PUT)
Beispiel-Request
curl -X POST "https://shop.de/xpanel/xoport/import/json/categories" \
-H "Authorization: Bearer YOUR_ACCESS_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"type": "categories",
"data": [{
"parent_id": 0,
"status": 1,
"sort_order": 10,
"languages": {
"de": {
"categories_name": "Neue Kategorie",
"categories_heading": "Neue Kategorie Überschrift"
}
}
}]
}'Delete (DELETE)
curl -X DELETE "https://shop.de/xpanel/xoport/delete/json/categories?categories_id=99" \
-H "Authorization: Bearer YOUR_ACCESS_TOKEN"Achtung: Löscht auch alle Unterkategorien und entfernt Produktzuordnungen!
Categories Productlist NEU v2.12.0
Lightweight Endpoint für Kategorie→Produkt Mapping. Ideal für Synchronisations-Tools, die nur wissen müssen, welche Produkte in welchen Kategorien liegen.
| Endpoint | Beschreibung | Beispiel |
|---|---|---|
GET /categories/productlist | Alle Kategorien mit Produkten | Komplettes Mapping |
GET /categories/productlist?categories_id={id} | Einzelne Kategorie | ?categories_id=73 |
GET /categories/productlist?status=1 | Nur aktive Kategorien | Standard-Filter |
GET /categories/productlist?include_inactive_products=1 | Auch inaktive Produkte | Default: nur aktive |
GET /categories/productlist?language=de | Sprach-Filter | Kategoriename in Sprache |
Response-Format
{
"type": "categories_productlist",
"api_version": "2.12.0",
"pagination": { "total": 42, "limit": 50, "offset": 0 },
"data": [
{
"categories_id": 73,
"categories_name": "Drucker",
"products_count": 3,
"products": [
{ "id": 101, "model": "HP-LJ-4050" },
{ "id": 102, "model": "EP-WF-7840" },
{ "id": 103, "model": "BR-HL-L6400" }
]
}
]
}Tipp: Der Productlist-Endpoint ist memory-effizient — ein einziger SQL-Query ohne Relations-Laden. Perfekt für große Kataloge mit 10.000+ Produkten. Scope:
categories:read.