Open navigation

Leitfaden für die Integration zwischen Canto und einem Drittsystem


Wann brauche ich eine Integration?

Canto dient als zentraler Ort zur Verwaltung Ihrer digitalen Assets. Aber in vielen Fällen werden diese Assets auch an anderen Stellen im Unternehmen benötigt, z.B. auf der Website oder in der Produktverwaltung. Damit Canto der Single Point of Truth bleiben kann, sollten auch die anderen Systeme auf Assets aus Canto zugreifen. Würde jedes System seine Assets selbst verwalten, kommt es zu redundanten Dateien, doppeltem Speicherplatz und Verwendung von ggf. veralteten Assets.


Damit aus anderen Systemen auf in Canto hinterlegte Assets zugegriffen werden kann, ohne dass man sich in Canto anmelden und die Assets dort herunterladen muss, kann es sinnvoll sein, eine Verbindung zwischen Canto und einem weiteren System herzustellen. Über diese Verbindung erfolgt ein direkter Zugriff auf die Canto Assets aus dem jeweiligen Drittsystem und es können im besten Falle Verlinkungen zu den Assets hergestellt werden.


Es gibt zahlreiche Möglichkeiten für die Implementierung einer solchen Integration. Da auch die Anforderungen von Kunde zu Kunde sehr unterschiedlich sind, können wir keine generelle Anleitung zur Entwicklung einer Integration geben. Die folgenden Passagen bieten einen Überblick der Möglichkeiten, die Canto bietet und und gehen auf die häufigsten Anwendungsfälle ein. 


Voraussetzungen

Generell ist zu sagen: Canto stellt keine Entwickler-Ressourcen für kundenspezifische Integrationen zur Verfügung. Planen Sie eine Integration eines Drittsystems mit Canto, so müssen Sie diese selbstständig entwickeln. Wir unterstützen Sie gerne in Form von Developer-Support für unsere API. Dies bedeutet: Wir sprechen mit Ihnen in einem gemeinsamen Termin über Ihre Anforderungen und beraten Sie, wie man diese mit unserer API bestmöglich umsetzen kann. Beratung bezüglich des von Ihnen verwendeten Drittsystems oder der verwendeten Programmiersprache ist ebenso wenig Bestandteil dieses Supports wie eine Analyse Ihres Quellcodes.


Welche Möglichkeiten bietet Canto?


Die Canto API

Die Canto API ist ein RESTful Webservice, der es ermöglicht, sowohl lesende als auch schreibende Operationen auf Ihrem Canto Tenant durchzuführen. Neben dem Abrufen und Schreiben von Metadaten ist u.a. auch ein Upload von Assets oder der Abruf der Ordner-/Albumstruktur möglich. Die API stellt eine passive Komponente dar. Dies bedeutet, dass die API vom Drittsystem angesprochen werden muss.


Webhooks

Webhooks ermöglichen es, Benachrichtigungen an eine Gegenstelle zu senden, sobald es zu Änderungen an Canto Inhalten kommt. Für diverse Ereignisse, z.B. Hochladen, Ändern, Löschen eines Assets, Zuweisen bzw. Entfernen eines Albums, Erstellen von Alben, wird eine Benachrichtigung als json, xml oder txt Format an eine spezifische URL gesendet. Diese Gegenstelle muss die Nachrichten entgegennehmen und diese verarbeiten. So können die Inhalte des Drittsystems immer synchron mit den Canto-Inhalten gehalten werden und veraltete oder nicht mehr lizensierte Inhalte im Drittsystem werden vermieden.


Hinweis: Die Webhooks können gut als Ergänzung zur Canto-API genutzt werden.


Media Delivery Cloud - Auslieferung von Assets mittels CDN

Die Media Delivery Cloud (MDC) ist das Content Delivery Network (CDN) von Canto und dient der Publizierung der Assets im Drittsystem. Mit Hilfe der MDC können die Assets im Drittsystem verlinkt werden. 


Alle Details zur Voraussetzung und Nutzung der MDC können in diesem Artikel eingesehen werden.


Universal Connector

Der Universal Connector ist eine von Canto entwickelte Beispielanwendung, die als Basis für die Entwicklung eigener Integrationen verwendet werden kann. Der Universal Connector stellt einen Asset Picker zur Verfügung mit Such- und Navigationsfunktion. Der Source Code ist kostenlos in unserem Help Center verfügbar und kann eigenständig weiterentwickelt bzw. angepasst werden. 


Gibt es bestehende Standard-Integrationen?

Canto hat bereits eine Reihe von universell nutzbaren Integrationen zu einigen Drittsystemen entwickelt. Eine Übersicht der vorhandenen Integrationen kann auf unserer Website eingesehen werden. 


Nutzung der Canto API - was muss ich wissen?

Für unsere API steht online eine ausführliche Dokumentation zur Verfügung. Diese Dokumentation beinhaltet auch einen umfangreichen Best Practices Bereich und einige Integration Guidelines um dessen Beachtung wir Sie bitten. 


Ein Termin mit unserem Developer-Support hilft Ihnen außerdem, den richtigen Weg für die Integration zu finden. 


Nachfolgend einige grundlegende Informationen zum Umgang mit der API: 


Autorisierung

Der Oauth-Server richtet sich nach der Domain Ihres Canto-Accounts

Die Autorisierung erfolgt mittels OAuth2. Dafür bietet Canto mehrere OAuth-Server, welche sich nach der Domain Ihres Canto Accounts richten. Liegt Ihr Canto Account z.B. in der .de Domain, dann müssen Sie auch den .de Oauth-Server für die Autorisierung nutzen. Für die Autorisierung wird ein API Key, bestehend aus ID und Secret, benötigt. Der API Key wird Ihnen vom Support zur Verfügung gestellt.


Unterscheiden zwischen Authorization Code und Client Credentials

Grundsätzlich gibt es zwei Modi für die Autorisierung:

  • Authorization Code
  • Client Credentials 

Der Authorization Code muss über die Oauth Page durch Eingabe von Benutzername und Passwort abgerufen werden, benötigt also einen manuellen Eingriff. Er eignet sich z.B. für benutzergesteuerte- oder Frontend-Integrationen. Im Gegensatz dazu kann die Autorisierung über die Client Credentials komplett automatisiert erfolgen und ist daher optimal für Backend-Integrationen.

Hinweis: Es ist aus sicherheitstechnischen Gründen nicht zu empfehlen die Client Credentials Methode z.B. in JavaScript Anwendungen zu verwenden, da hier der gesamte API Key Teil der URL ist.

Nach erfolgter Autorisierung erhalten Sie einen Access Token, der für die weitere Nutzung der API relevant ist. Dieser Token ist 30 Tage gültig.

Unterschiedliche Rate Limits der API Endpunkte

Jeder API Endpunkt hat ein eigenes Rate Limit, welches aussagt, wie oft der Endpunkt pro Minute abgerufen werden kann. Ist das Rate Limit erreicht, sendet die API eine entsprechende Fehlermeldung (HTTP 429). Ist das der Fall, muss die Anfrage nach einer Wartezeit wiederholt werden.


Grundlegendes Fehlerhandling

Neben dem Rate Limit kann es noch aus anderen Gründen zu Fehlern während der Kommunikation mit einem Webservice kommen. In der API-Dokumentation finden Sie eine Auflistung der möglichen Fehlercodes und deren Ursachen. Um Probleme mit der Integration zu vermeiden, sollte ein konsequentes Fehlerhandling Teil der Implementierung sein. 


Was sind die Canto Webhooks?

Mit den Canto Webhooks können automatisierte Benachrichtigungen von Canto an eine Gegenstelle gesendet werden. Diesen Benachrichtigungen geht eine Änderung in Canto voraus, so kann z.B. das Ändern von Metadaten oder das Löschen eines Assets eine automatisierte Nachricht auslösen. 


Die empfangende Gegenstelle muss kundenseitig entwickelt werden. Sie muss die Nachrichten entgegennehmen und verarbeiten. 


Ein Einsatz der Webhooks ist in Kombination mit der API sinnvoll, wenn das Drittsystem über Änderungen oder neue bzw. gelöschte Assets benachrichtigt werden soll. 


Hinweis: Die Webhooks werden direkt bei einer entsprechenden Änderung in Canto ausgelöst. Eine Persistierung der Webhooks von Canto findet nicht statt. Es empfiehlt sich auf Seiten des Drittsystem einen automatisierten Abgleich zu erstellen, der regelmäßig (z.B. einmal pro Tag) die Konsistenz der Daten prüft.


Wann brauche ich ein CDN?

Ein Content Delivery Network (CDN) dient der weltweiten, leistungsfähigen Auslieferung von Assets z.B. auf einer Website, im PIM System oder zur Weitergabe an Marktplätze. 


Das Canto CDN (Media Delivery Cloud) erlaubt Ihnen neben der Auslieferung der Assets auch eine on-the-fly Anpassung bzgl. Größe, Format oder Bildausschnitt. 


Ein weiterer Vorteil bei der Nutzung der MDC liegt darin, dass eine Verlinkung der Assets (sofern in Ihrem Drittsystem möglich) anstatt einer Kopie genutzt werden kann. Somit erhalten Sie immer das aktuellste Asset und doppelter Speicherplatz sowie redundante Datenhaltung werden vermieden. 


Anwendungsfälle

Nachfolgend haben wir einige Beispiele für gängige Anwendungsfälle für eine Integration aufgelistet.


Abrufen von Assets aus Canto und Darstellung im Drittsystem

z.B. CMS (Website) oder E-Commerce-System

  • Zur Auswahl der Canto Assets im Drittsystem wird ein Asset Picker benötigt - dieser muss entweder selbst oder auf Basis des Universal Connectors entwickelt werden (API)
  • Eine Suche/Filterung der Canto Daten sollten den Benutzern des Drittsystems zur Verfügung stehen (API)
  • Die Publizierung der Assets in diversen Größen (Thumbnail, Vorschaubild usw.) erfolgt mittels Verlinkung über einen MDC Link, kein Herunterladen notwendig (sofern vom Drittsystem unterstützt) (MDC)


Darstellung von Canto Ordner- und Albumstruktur im Drittsystem

z.B. CMS (Website) oder PIM-System

  • Abruf der gesamten Orderstruktur oder einer Teilstruktur (z.B. Produktbilder) und Darstellung im Drittsystem (API)
  • Navigation und Darstellung der Ordnerinhalte (API)


Zuordnung von Canto Assets zu Produkten

z.B. PIM-System

  • Suchen/Abrufen der Metadaten und Links zu den Assets (API, MDC)
  • Aktualisierung der Metadaten zwischen Canto und PIM (uni- oder bidirektional) (API, Webhooks)
  • Benötigt eindeutiges Merkmal zum Verknüpfen der Canto Assets mit den Produkten, z.B. Artikelnummer in Canto + Canto ID im PIM System
  • Wichtig Fragestellung: Gibt es eine 1:1 oder 1:n Verbindung zwischen Artikel und Asset? (Falls 1:n z.B. Speicherung der Artikelnummern kommasepariert am Asset)
  • Bei Verlinkung der Canto Assets im PIM, keine doppelte Datenhaltung notwendig (MDC)


Ausspielung von Produktbildern im Webshop

z.B. E-Commerce-System

  • Suche/Abrufen der Assets über eindeutiges Merkmal (z.B. Artikelnummer) (API, MDC)
  • Benötigt eindeutiges Merkmal zum Verknüpfen der Canto Assets mit den Produkten im Shop
  • weitere Zuordnung über zusätzliche Metadaten, z.B. Position im Shop über Bildnummer/Art des Bildes (front, Seite, oben..) möglich (API)


Ausspielung von Sicherheitsdatenblättern zum Download

z.B. PIM, E-Commerce-System

  • Suchen/Abrufen der Sicherheitsdatenblätter anhand von Filterkriterien auf Basis der Metadaten (API, ggf. MDC)
  • Zuordnung z.B. über Artikelnummer oder weitere Metadatenfelder möglich
  • Benötigt ggf. eindeutiges Merkmal zum Verknüpfen der Canto Assets mit den zum Dokument gehörenden Produkten

Wie fange ich an?

Bevor Sie überhaupt mit der Implementierung einer Integration starten, sollte eine Konzeption vorausgehen. Machen Sie sich bewusst, welches Ziel Sie mit der Integration verfolgen und definieren Sie Ihre Anwendungsfälle


Falls intern keine Entwicklungsressourcen zur Verfügung stehen, bietet es sich an, einen entsprechenden Dienstleister zu beauftragen. Es ist zu empfehlen, einen Dienstleister auszuwählen, der sich mit Ihrem Drittsystem auskennt und grundlegendes Know-How im Bereich der Anbindung von RESTful Webservices hat. 


Im nächsten Schritt kontaktieren Sie bitte unseren Developer-Support. In einem gemeinsamen Termin mit Ihrem Entwickler sprechen wir über den bestmöglichen Lösungsweg für Ihre Integration. Zur Vorbereitung für diesen Termin finden Sie nachfolgend eine Reihe von Fragen, die wir gemeinsam mit Ihnen erörtern möchten: 

  1. Welches Drittsystem wird an Canto angebunden?
  2. Um welche Art von Integration handelt es sich? - Backend-Integration (System zu System, Batch) oder Frontend/benutzergesteuerte Prozesse?
  3. Welche Anfragen möchten Sie konkret an unsere API stellen?
  4. In welchem zeitlichen Intervall werden die jeweiligen Anfragen ausgeführt? Wenn dies abhängig von der Benutzerauslastung ist, so wäre hier eine Einschätzung interessant: bei normaler und hoher Auslastung.
  5. Falls Sie Inhalte nach Canto hochladen:
    • Um wie viele Uploads handelt es sich durchschnittlich?
    • In welchem Intervall planen Sie, den Upload-Status abzufragen?
  6. Benötigen Sie eine Verlinkung von Assets und/oder Vorschaubildern? 

    • Falls ja, welche Art von Verlinkung (Preview/Thumbnail/Original)?

    • Wie viele Assets werden in etwa verlinkt?

    • Benötigen Sie spezielle Renditions oder Zuschnitte?

    • Wie viele Anfragen pro Minute werden benötigt (Durchschnitt)?

  7. Speichern Sie Assets auch im Drittsystem?

  8. Wird ein regelmäßiger Abgleich von Daten benötigt? Falls ja, wie planen Sie diesen zu realisieren (Push/Pull Mechanismus)?


War diese Antwort hilfreich? Ja Nein

Feedback senden
Leider konnten wir nicht helfen. Helfen Sie uns mit Ihrem Feedback, diesen Artikel zu verbessern.