Mapper (Feed Import)

Der Mapper ist das Modul, das für den Import von Katalog-Daten in das laets PIM genutzt wird. Dieses Tool erlaubt den Import von Produkten, Angeboten und Varianten. Die Daten bzw. die Quelldatei können über ein Datei hoch- oder via http(s) link heruntergeladen werden. Die Datenquelle muss entweder eine CSV-Datei oder ein Google Spreadsheet sein.


Voraussetzungen

Kenntniss über die Marktplatz-Konfiguration:

Hinweis :

Alle API-Call’s müssen nacheinander erfolgen (warten Sie das Ergebnis eins Call’s ab, bevor Sie den nächsten schicken).

Hinweis :

Die Struktur der Quelldatei sollte festgelegt sein. Wenn eine oder mehrere Änderungen vorgenommen werden (beispielsweise durch hinzufügen einer neuen Spalte), müssen alle Aufrufe erneut durchgeführt werden.


Anlage einer Mapper-Konfiguration

  
  POST {{api_url}}/v1/mapper_configuration/

mit dem Body:

  
  {
  "name": "Feed Products Test Collection Seller Integration",
  "application": "/v1/application/{{APPLICATION_ID}}/",
  "izberg_entity": "product_and_offer",
  "language": "de",
  "method": "http",
  "options": {
      "url": "http://feedsourceurl.com"
  },
  "merchant": "/v1/merchant/{{MERCHANT_ID}}/"
  }

Bedeutung:

  • name: Name der Mapper-Konfiguration
  • {{APPLICATION_ID}}: Die ID/Kennung ihres Händlerkontos
  • izberg_entity: Der Import-Typ (Mögliche Import-Typen sind „product“, „offer“, „product_and_offer“)
  • method: Das Protokoll, um die Quelldatei abzurufen (http, ftp)
  • options->url: Die URL-Adresse der Quelldatei
  • {{MERCHANT_ID}}: Ihre Händler-ID/Kennung

Hinweis :

Stellen Sie sicher, dass Ihr Quelldatei von Beginn an gut strukturiert ist, da der Mapper diese Struktur nutzt, um die Konfiguration zu starten.

Die folgenden Beispiele sind in der Postman-Sammlung verfügbar:

  • Mapper-Erstellung und -Update (“01. Mapper” -> “Sample Workflow Creation & Update”)
  • Nur Mapper-Update („01. Mapper“ -> „Sample Workflow Update Only“)


Mapper-Initialisierung und -Konfiguration

Die folgenden 3 Schritte (und die damit verbundenen API-Call’s) beschreiben, wie Sie den Mapper starten und konfigurieren:


Schritt 1: Initialisierung des Mappers
  
  POST {{api_url}}/v1/mapper_configuration/{{MAPPER_CONFIGURATION_ID}}/initialize/

mit dem Body:

  
  {
  "parser_method":"csv"
  }

Bedeutung:

  • parser_method: Das Protokoll, das zum Aufrufen der Quelldatei verwendet wird (csv, xml, json, googlesheet)

Beispiel-Antwort:

  
  {
  "abortion_threshold_override": null,
  "application": {
      "id": 658,
      "pk": 658,
      "resource_uri": "https://api.sandbox.iceberg.technology/v1/application/658/"
  },
  "cache_version": 0,
  "can_create": true,
  "can_update": true,
  "create_parsing_report": true,
  "created_on": "2018-01-03T15:20:51+01:00",
  "encoding": null,
  "every": 0,
  "fields": [],
  "id": 4989,
  "is_processing": false,
  "izberg_entity": "product_and_offer",
  "language": "fr",
  "last_automatic_run_date": null,
  "last_modified": "2018-01-03T15:22:43+01:00",
  "last_transformation_log": null,
  "mapper": {
      "id": 4987,
      "pk": 4987,
      "resource_uri": "https://api.sandbox.iceberg.technology/v1/mapper_mapper/4987/"
  },
  "matcher": {
      "id": 4969,
      "pk": 4969,
      "resource_uri": "https://api.sandbox.iceberg.technology/v1/mapper_matcher/4969/"
  },
  "merchant": {
      "id": 12719,
      "pk": 12719,
      "resource_uri": "https://api.sandbox.iceberg.technology/v1/merchant/12719/"
  },
  "meta": {},
  "method": "http",
  "name": "Feed Products Test Collection Seller Integration",
  "next_automatic_run_date": null,
  "options": {
      "url": "http://feedsourceurl.com"
  },
  "parser": {
      "application": {
          "id": 658,
          "pk": 658,
          "resource_uri": "https://api.sandbox.iceberg.technology/v1/application/658/"
      },
      "created_on": "2018-01-03T15:22:43+01:00",
      "id": 4804,
      "merchant": {
          "id": 12719,
          "pk": 12719,
          "resource_uri": "https://api.sandbox.iceberg.technology/v1/merchant/03034/"
      },
      "method": "csv",
      "options": {},
      "resource_uri": "https://api.sandbox.iceberg.technology/v1/mapper_parser/4804/"
  },
  "parsing_report_format": "yaml",
  "period": "days",
  "report_email_addresses": null,
  "resource_uri": "https://api.sandbox.iceberg.technology/v1/mapper_configuration/4989/",
  "save_content": true,
  "status": "active",
  "user": "test_user"
  }

Hinweis :

Die {{MATCHER_ID}} kann später für das Mapping genutzt werden.


Schritt 2: Konfiguration des Mappers

Dieser Schritt wird alle Felder Ihrer Quelldatei automatisch mappen, vorausgesetzt sie Nutzen exakt die gleiche Syntax wie das laets flat-File.

  
  POST {{api_url}}/v1/mapper_configuration/{{MAPPER_CONFIGURATION_ID}}/auto_mapping/

mit einem leeren Body.


Schritt 3: Konfiguration des Mapper Matchers

Dieser Schritt erlaubt es Ihnen Konfigurationen zu passenden Objekten (Matcher) hinzuzufügen. Ein Matcher ist ein Objekt aus der Mapper-Konfiguration, welches das Zusammenfügen unterschiedlicher Attributs-Werte ermöglicht. Sie können das Zusammenfügen der application_categories zum Beispiel auch deaktivieren, wenn Sie die Kategorie-IDs in Abschnitt 2 PIM Categories and Attributes bereits abgerufen haben:

  
  POST {{api_url}}/v1/mapper_matcher/{{MAPPER_MATCHER_ID}}/

mit dem Body:

  
  {
    "disable_matching":["application_categories", "language", "condition"]
  }

Bedeutung:

  • {{MAPPER_MATCHER_ID}}: Die ID des Matchers (wird als Ergebnis des POST-Aufrufs zurückgegeben oder einfach durch Übermitteln eines GET-Aufrufs abgerufen).
  • disable_matching: Die Liste der Attribute für welche Sie das Matching deaktivieren möchten.

Hinweis :

Wenn ein Attribut in der „disable_matching“-Liste aufgeführt wird, wartet der Mapper auf einen exakten Wert in der Quelldatei. Wir empfehlen alle Attribute, die einen bestimmten Wert benötigen, in der „disable_matching“-Liste aufzulisten.


Den Mapper starten

  
  POST {{api_url}}/v1/mapper_configuration/{{MAPPER_CONFIGURATION_ID}}/run/

mit einem leeren Body.

Hinweis :

Der Start des Mappers verläuft asynchron. Um den Status des Vorgangs zu überprüfen, verwenden Sie die API-Call’s unter „Mapper Überwachung“.


Mapper Überwachung

Jedes Mal, wenn der Mapper gestartet wird, wird eine Import-Historie erstellt. Die entsprechende API-Resource wird als /v1/mapper_transformation_log/ bezeichnet. Diese Ressource kann abgerufen werden um:

  • Den Status des Mappers (Analyse, Import, Ausführung) zu überprüfen
  • Die Anzahl der importierten Artikel, Warnungen und Fehlermeldungen zu überprüfen.

Die folgende Anfrage erlaubt es, die unterschiedlichen mapper_transformation_log abzurufen:

  
  GET {{api_url}}/v1/mapper_transformation_log/?configuration={{MAPPER_CONFIGURATION_ID}}&limit=10&offset=0

Um die Details eines bestimmten mapper_transformation_log zu erhalten (vor allem, wenn eine Fehlermeldung oder Warnung vorliegt) nutzen Sie:

  
  GET {{api_url}}/v1/mapper_transformation_log_detail/?transformation_log ={{MAPPER_TRANSFORMATION_LOG_ID}}&limit=10&offset=0


Mapper-Vorlagen

Die Postman-Sammlung beinhaltet 2 Vorlagen, welche beschreiben, wie Sie die unterschiedlichen Mapper-Integration implementieren können:

  • Standard-Modus 
  • Update-Modus