News-Endpunkt

Endpoint

News

Newsdesk-Artikel, Kategorien und Autoren verwalten.


Übersicht

News-Artikel (newsdesk)

OperationMethodEndpointScope
ExportGET/xpanel/xoport/export/json/newsdesknews:read
ImportPOST/xpanel/xoport/import/json/newsdesknews:write
UpdatePUT/xpanel/xoport/import/json/newsdesknews:write
DeleteDELETE/xpanel/xoport/delete/json/newsdesknews:delete

News-Kategorien (newsdesk_categories)

OperationMethodEndpointScope
ExportGET/xpanel/xoport/export/json/newsdesk_categoriesnews:read
ImportPOST/xpanel/xoport/import/json/newsdesk_categoriesnews:write
DeleteDELETE/xpanel/xoport/delete/json/newsdesk_categoriesnews:delete

Autoren (newsdesk_authors)

OperationMethodEndpointScope
Export (alle)GET/xpanel/xoport/export/json/newsdesk_authorsnews:read
Export (einzeln)GET/xpanel/xoport/export/json/newsdesk_author/{id}news:read

News-Artikel exportieren

Routen

RouteErgebnis
/export/json/newsdesksAlle Artikel
/export/json/newsdesk/{id}Genau ein Artikel
/export/json/newsdesks/{id}Alle Artikel ab dieser ID

Query-Parameter

ParameterTypBeschreibung
limitintMax. Anzahl Datensätze
offsetintStartposition

Eine Einschränkung auf eine News-Kategorie gibt es serverseitig nicht — dafür das Feld categories_ids der Antwort auswerten.


Feldliste

Felder je Artikel

FeldTypBeschreibung
newsdesk_idintID des Artikels — bei PUT Pflichtfeld
newsdesk_statusint1 = veröffentlicht, 0 = inaktiv
newsdesk_date_availabledatetimeVeröffentlichen ab (Y-m-d H:i:s)
newsdesk_date_addeddatetimeErstelldatum
newsdesk_last_modifieddatetimeLetzte Änderung — nur Export
newsdesk_stickyint1 = oben angepinnt
sort_orderintSortierreihenfolge
newsdesk_imagestringArtikelbild (Dateiname)
newsdesk_authorstringAutor als Freitext
author_idintAutor aus der Autorenverwaltung (0 = keiner)
categories_idsint[]News-Kategorien, z. B. [2, 5] — Mehrfachzuordnung möglich
languages{}objectSprachblock, Schlüssel = Sprachcode (de, en …)

Seit v2.121.0 Beim Anlegen (POST) ergänzt der Import jede aktive Sprache, für die kein eigener Block gesendet wurde, aus der Master-Sprache (dem de-Block, sonst dem ersten gesendeten Block). Ist die DeepL-Übersetzung eingerichtet, übersetzt sie diese Sprachen beim nächsten Lauf.

Felder je Sprache (im Block languages)

FeldTypBeschreibung
newsdesk_article_namestringTitel
newsdesk_article_shorttexthtmlTeaser / Kurztext
newsdesk_article_descriptionhtmlArtikeltext
newsdesk_image_textstringBildunterschrift / Alternativtext
newsdesk_article_urlstringExterner Link (optional)
newsdesk_article_url_namestringBeschriftung des externen Links
seo_namestringURL-Slug — wird aus dem Titel erzeugt, wenn leer
title_tagstringMeta-Titel
desc_tagstringMeta-Beschreibung
keywords_tagstringMeta-Keywords
newsdesk_article_viewedintAufrufzähler — nur Export

Import (POST) und Update (PUT)

curl -X POST "https://shop.de/xpanel/xoport/import/json/newsdesk" \
  -H "Authorization: Bearer YOUR_ACCESS_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{
    "type": "newsdesk",
    "data": [{
      "newsdesk_status": 1,
      "newsdesk_sticky": 0,
      "sort_order": 0,
      "newsdesk_date_available": "2026-08-12 08:00:00",
      "author_id": 0,
      "categories_ids": [2],
      "languages": {
        "de": {
          "newsdesk_article_name": "Neue Produktlinie",
          "newsdesk_article_shorttext": "<p>Kurz angerissen …</p>",
          "newsdesk_article_description": "<p>Wir erweitern …</p>",
          "title_tag": "Neue Produktlinie | Shop",
          "desc_tag": "Wir erweitern unser Sortiment."
        },
        "en": {
          "newsdesk_article_name": "New product line"
        }
      }
    }]
  }'

Für ein Update dieselbe Struktur per PUT senden und newsdesk_id mitgeben. Nur die übermittelten Felder werden geschrieben — nicht gesendete Felder bleiben unverändert.


Hinweise

  • categories_ids ist ein Vollspiegel: Wird das Feld gesendet, werden alle bisherigen Kategoriezuordnungen des Artikels ersetzt. Wird es weggelassen, bleiben sie unangetastet.
  • Die Kategoriezuordnung heißt categories_ids (Array). Ein newsdesk_categories_id wird als unbekanntes Feld ignoriert — der Artikel entstünde ohne Kategorie.
  • Fehlt seo_name, wird der Slug automatisch aus newsdesk_article_name erzeugt (strip_seo()).
  • Ändert sich seo_name bei einem Update, legt der Import automatisch einen 301-Redirect von der alten URL an (SEO-History).
  • Nach dem Import werden der News-Cache geleert und die DeepL-Übersetzungen der geänderten Artikel zur Neuübersetzung markiert.
  • Nur-Export-Felder (werden beim Import ignoriert): newsdesk_last_modified, newsdesk_article_viewed.