Migration Guide von SOAP zu REST

Informationen zu neuen, nicht verpflichtenden Parametern der REST-Endpunkte sowie die zugehörigen Rückgabewerte entnehmen Sie bitte der API-Dokumentation zu Ihrer FACT-Finder-Installation (https://<Ihre Basis-URL>/fact-finder/swagger-ui.html).

Allgemeines

Authentifizierung

Ab dem 01.04.2022 wird OAuth2 nicht mehr von FACT-Finder unterstützt.

Als Optionen zur Authentifizierung steht Basic Authentication zur Verfügung:

Basic Authentication

Um sich mit Basic Authentication zu authentifizieren, muss der Authorization-Header folgendes enhalten: das Wort Basic, gefolgt von einem Leerzeichen und der Base64-encodierten username:passwort-Zeichenkette. Ein Header mit den Anmeldedaten factfinder:pw würde so aussehen: Authorization: Basic ZmFjdGZpbmRlcjpwdw=. ZmFjdGZpbmRlcjpwdw== ist hierbei die Base64-Repräsentation von factfinder:pw.


Fehlermeldungen

Fehlermeldungen (4xx und 5xx) werden als einzelne Fehlermeldung mit folgender Struktur zurückgegeben:

{

  "error": "Bad Request",

  "errorDescription": "Channel 'abcde' does not exist.",

  "stacktrace":

    [

      "stack trace",

      "as array"

    ]

}

Campaign

getProductCampaigns

Den entsprechenden REST-Endpunkt zu Campaign.getProductCampaigns(…) finden Sie unter /rest/v4/campaign/{channel}/product (GET).

Der verpflichtende Parameter PRODUCT_NUMBER wurde zu id umbenannt.

Der Parameter IDS_ONLY wurde zu idsOnly umbenannt.

getShoppingCartCampaigns

Den entsprechenden REST-Endpunkt zu Campaign.getShoppingCartCampaigns(…) finden Sie unter /rest/v4/campaign/{channel}/shoppingcart (GET).

Der verpflichtende Parameter SHOPPING_CART_PRODUCT_NUMBER_LIST wurde zu productNumber umbenannt.

Der Parameter IDS_ONLY wurde zu idsOnly umbenannt.

getPageCampaigns

Den entsprechenden REST-Endpunkt zu Campaign.getPageCampaigns(…) finden Sie unter /rest/v4/campaign/{channel}/page (GET).

ChannelManagement

Zu diesen Endpunkten existieren keine entsprechenden REST-Endpunkt. Sie können die zugehörigen Einstellungen über das FACT-Finder-UI vornehmen.

Import

deleteRecord

Den entsprechenden REST-Endpunkt zu Import.deleteRecord(…) finden Sie unter /rest/v4/records/{channel} (DELETE).

deleteRecords

Den entsprechenden REST-Endpunkt zu Import.deleteRecords(…) finden Sie unter /rest/v4/records/{channel} (DELETE).

insertRecord

Den entsprechenden REST-Endpunkt zu Import.insertRecord(…) finden Sie unter /rest/v4/records/{channel} (POST).

Der verpflichtende Parameter record wurde zu records umbenannt.

insertRecords

Den entsprechenden REST-Endpunkt zu Import.insertRecords(…) finden Sie unter /rest/v4/records/{channel} (POST).c

Der verpflichtende Parameter record wurde zu records umbenannt.

downloadProductExport

Es existiert kein entsprechender REST-Endpunkt zu Import.downloadProductExport(...).

startImport

Den entsprechenden REST-Endpunkt zu Import.startImport(…) finden Sie unter /rest/v4/import/search (POST).

startImports

Den entsprechenden REST-Endpunkt zu Import.startImports(…) finden Sie unter /rest/v4/import/search (POST).

startSuggestImport

Den entsprechenden REST-Endpunkt zu Import.startImports(…) finden Sie unter /rest/v4/import/suggest (POST).

updateRecord

Den entsprechenden REST-Endpunkt zu Import.updateRecord(…) finden Sie unter /rest/v4/records/{channel} (PUT).

Der verpflichtende Parameter record wurde zu records umbenannt.

getErrors

Es existiert kein entsprechender REST-Endpunkt zu Import.getRecords(...). Fehlermeldungen, die beim Import auftreten, sind Teil der entsprechenden Rückgabe. Weiterhin können sie im FACT-Finder-UI eingesehen oder zyklisch per E-Mail zugesendet werden.

ProductComparison

compareRecords

Den entsprechenden REST-Endpunkt zu ProductComparison.compareRecords(…) finden Sie unter /rest/v4/records/{channel}/compare (GET).

Der verpflichtende Parameter recordIds wurde zu id umbenannt.

Recommender

importData

Den entsprechenden REST-Endpunkt zu Recommender.importData(…) finden Sie unter /rest/v4/import/recommendation (POST).

getRecommendation

Den entsprechenden REST-Endpunkt zu Recommender.getRecommendation(…) finden Sie unter /rest/v4/records/{channel}/recommendation (GET).

Der verpflichtende Parameter id wurde hinzugefügt. Er nimmt Produkt-IDs entgegen, für die eine Recommendation gewünscht wird.

getResult

Den entsprechenden REST-Endpunkt zu Search.getResult(...) finden Sie unter /rest/v4/search (POST) bzw. /rest/v4/search/{channel} (GET).

Die folgenden Parameter sind entfallen:

  • detailCustomParameters (params)
  • followSearch (params)
  • articleNumber (params)
  • seoPath (params)
  • sortsList (params)
  • generateAdvisorTree (searchControlParams)
  • useKeywords (searchControlParams)

Der Parameter filters (params) wurde zu filter umbenannt.

Der Parameter noArticleNumberSearch (params) wurde zu articleNumberSearch. Er legt fest, ob die Abfrage als Artikelnummer interpretiert werden soll. Bei DETECT wird automatisiert ermittelt, ob es sich bei der Abfrage um eine Artikelnummer handelt, ALWAYS interpretiert den Suchbegriff stets als Artikelnummer, NEVER nie. Der Standardwert ist DETECT.

Der Parameter resultsPerPage (params) wurde zu hitsPerPage umbenannt.

Der Parameter disableCache (searchControlParams) wurde zu useCache. Dadurch ergibt sich eine Umkehrung der Werte! Wenn true, wird das Ergebnis aus dem Cache zurückgegeben, falls ein passender Eintrag existiert. Der Standardwert ist true.

getSuggestions

Den entsprechenden REST-Endpunkt zu Search.getSuggestions(...) finden Sie unter /rest/v4/suggest (POST) bzw. /rest/v4/suggest/{channel} (GET).

Die folgenden Parameter sind entfallen:

  • detailCustomParameters (params)
  • followSearch (params)
  • articleNumber (params)
  • seoPath (params)
  • sortsList (params)
  • disableCache (searchControlParams)
  • generateAdvisorTree (searchControlParams)
  • idsOnly (searchControlParams)
  • useAsn (searchControlParams)
  • useAso (searchControlParams)
  • useCampaigns (searchControlParams)
  • useFoundWords (searchControlParams)
  • useKeywords (searchControlParams)
  • usePersonalization (searchControlParams)
  • useSemanticEnhancer (searchControlParams)

Der Parameter filters (params) wurde zu filter umbenannt.

Der Parameter noArticleNumberSearch (params) wurde zu articleNumberSearch. Er legt fest, ob die Abfrage als Artikelnummer interpretiert werden soll. Bei DETECT wird automatisiert ermittelt, ob es sich bei der Abfrage um eine Artikelnummer handelt, ALWAYS interpretiert den Suchbegriff stets als Artikelnummer, NEVER nie. Der Standardwert ist DETECT.

Der Parameter resultsPerPage (params) wurde zu hitsPerPage umbenannt.

SimilarProducts

getSimilarProducts

Den entsprechenden REST-Endpunkt zu SimilarProducts.getSimilarProducts(...) finden Sie unter /rest/v4/records/{channel}/similar (GET).

Der verpflichtende Parameter CHANNEL wurde zu channel umbenannt.

Der verpflichtende Parameter recordId wurde zu id umbenannt.

Der Parameter maxArticles wurde zu maxResults umbenannt.

Der verpflichtende Parameter idType (string, query) wurde hinzugefügt. Er spezifiziert, welchen Typ die ID besitzt.

TagCloud

getTagCloudEntries

Es existiert kein entsprechender REST-Endpunkt zu TagCloud.getTagCloudEntries(...), da die Funktion entfallen ist.

Tracking

Die entsprechenden REST-Endpunkte finden Sie unter /rest/v4/track/{channel}/… (POST).

Es existieren derzeit die folgenden Tracking-Endpunkte:

  • /rest/v4/track/{channel}/cart

Tracking von Cart-Events

  • /rest/v4/track/{channel}/checkout

Tracking von Checkout-Events

  • /rest/v4/track/{channel}/click

Tracking von Click-Events

  • /rest/v4/track/{channel}/feedback

Tracking von Feedback-Events

  • /rest/v4/track/{channel}/landingPageClick

Tracking von Click-Events für Produkte, die durch eine Kampagne auf einer Landing-Page bereitgestellt wurden.

  • /rest/v4/track/{channel}/log

Tracking von Log-Events

  • /rest/v4/track/{channel}/login

Tracking von Log-In-Events

  • /rest/v4/track/{channel}/predbasketClick

Tracking von Predictive-Basket-Klickevents

  • /rest/v4/track/{channel}/recommendationClick

Tracking von Recommendation-Klickevents

Nähere Informationen zu den einzelnen Tracking-Endpunkten entnehmen Sie bitte der API-Dokumentation zu Ihrer FACT-Finder-Installation (https://<Ihre Basis-URL>/fact-finder/swagger-ui.html).

UserManagement

Zu diesen Endpunkten existieren keine entsprechenden REST-Endpunkt. Sie können die zugehörigen Einstellungen über das FACT-Finder-UI vornehmen.