Met Sitecore Content Hub DAM heeft u al uw documenten klaar voor uw website. Een groot volume aan inhoud dat u wilt beheren en delen via uw digitale platforms.
Door Danny Paul van Iersel, 12-1-2024
Binnen Content Hub DAM kunt u al uw assets beheren en beschikbaar maken op andere platforms.
In dit geval hebben we een volledig User Experience Portal gemaakt om toegang te krijgen tot assets waar een ingelogde gebruiker toegang toe heeft.
Via Sitecore Content Hub DAM kunnen we documenten configureren, revisies toevoegen en publiceren naar een websiteportal. Via het portal kunnen gebruikers toegang krijgen tot de assets als ze de juiste toegang hebben tot de assets.
Om de inhoud van Content Hub DAM naar een gebruiksvriendelijk portal te brengen, zijn er meerdere verbindingen die we kunnen gebruiken om toegang te krijgen tot de gegevens.
De verbindingen die we in dit bericht zullen behandelen zijn:
Web Client Stylelabs SDK
GraphQL met Preview en Delivery API
RestAPI api/audit/raw/query
Naast deze zijn er ook nog 2 andere:
Fluent SDK
Javascript SDK
De Web Client SDK is eenvoudig te gebruiken en zet reacties om naar uw code-objecten.
We gebruiken deze SDK om de assets van Content Hub te krijgen. Hiermee hebben we direct alle benodigde opties van een asset.
Vanuit de asset kunnen we vervolgens alle velden verzamelen die hierbij horen, zoals de levenscyclus, bestandseigenschappen en voornamelijk de assets-rendities.
Uit de Rendities kunnen we het originele bestand verzamelen, maar ook het voorbeeldbestand of een andere renditie die is gemaakt voor het document.
Tijdens onze ontwikkeling merkten we op dat in onze Content Hub-structuur het zeer belastend was om al onze gegevens op te halen om op een website weer te geven. Onze aangepaste schema-items en taxonomieën met hun relaties kostten te veel middelen en tijd om uit te voeren voor onze klant.
Daarom zijn we voor alle gegevensverzameling anders dan specifieke assets-data overgeschakeld en zijn we begonnen met het gebruik van GraphQL.
Content Hub maakte het mogelijk om de GraphQL IDE te gebruiken. Deze IDE kan 2 API's blootleggen:
Preview API:
Geeft toegang tot alle inhoud binnen Content Hub. Het is niet raadzaam om dit te gebruiken voor productiedoeleinden, omdat dit ook gegevens kan opleveren die nog niet zijn goedgekeurd.
Delivery API:
Heeft hetzelfde schema als de Preview API, maar retourneert alleen goedgekeurde en gepubliceerde inhoud.
Om de GraphQL IDE te gebruiken, moet u een API-sleutel maken in Content Hub om te gebruiken bij de API-oproepen.
Er is ook een interessante functie die u kunt openen via de browser en die Playground wordt genoemd.
Playground om uw queries te testen:
https://<<UW ContentHub URL>>/api/graphql/preview/ide/
Het komt ook met Intellisense. Dit geeft je de beschikbare schemaproperties.
Door GraphQL te gebruiken hebben we een grote optimalisatie voor prestaties. We verzamelen veel gegevens en veel relaties om ons doel te bereiken.
Er zijn veel extra API's die Content Hub beschikbaar heeft. Je kunt de API's gebruiken om gegevens uit Content Hub op te halen, maar het zal moeilijker zijn als je complexe queries hebt. De API kan worden gebruikt om extern Content Hub-gegevens te wijzigen, bijvoorbeeld als je een importscript hebt om wijzigingen vanuit andere systemen bij te werken. Ook geeft het je de mogelijkheid om bestanden te uploaden of Fetch Job-informatie op te halen. In ons geval zijn we verplicht om e-mails te sturen naar externe gebruikers van ons Portal. Deze gebruikers zijn niet bekend in Content Hub. In de e-mail informeren we gebruikers over de wijzigingen die zijn aangebracht in de documenten waar ze toegang toe hebben. Hiervoor moeten we alle wijzigingen weten die zijn aangebracht in Content Hub in de laatste x aantal dagen. Dit kan in de afgelopen week zijn of de afgelopen maand, afhankelijk van of de gebruiker wekelijkse of maandelijkse meldingen wil.
We gebruiken de Audit Endpoint "/api/audit". Voorbeeld-URL https://<<jouw Content Hub URL>>/api/audit/raw/query{/entityId}{?eventTypes*,definitionNames*,userIds*,properties*,relations*,culture,from,to,fullText,skip,take,sort,order}
Om informatie via deze methode op te halen, moeten we eerst authenticeren. Dit verloopt via de Endpoint "/api/authenticate". De respons geeft je een token en je gebruikt dit token om de Audit-endpoint aan te roepen met de header "X-Auth-Token". Nu kunnen we de auditgegevens opvragen. We kunnen de volgende parameters gebruiken voor onze query:
Parameter |
Description |
EntityId |
User for specific entity |
DefinitionNames |
Can be used to gather all audit of a specific definition |
From |
Start time to retrieve data from |
To |
End time to retrieve data till |
Skip |
The amount to skip |
Take |
The amount to take |
Sort |
The field on what to sort |
Order |
Order of sorting: asc or desc |
EventTypes |
Type of the Audit event (EntityUpdated, EntityCreated etc.) |
UserIds |
Id of the user that belongs to the Audit event |
Properties |
Filters on the requested properties. Only gives result based on requested properties. |
Relations |
Filters on the requested relations. Only results of changes done the requested relations |
Culture |
Culture for the response data |
Een voorbeeld van de respons die je kunt verwachten:
Wanneer de respons je gegevens geeft van het gebeurtenistype "EntityUpdated", kun je zien welke eigenschap is gewijzigd. Ook zie je wat de waarde was vóór de wijziging en wat er is veranderd.
Je ziet dat er veel manieren zijn om te gaan en de resultaten te krijgen die je wilt. Je bent niet beperkt tot alleen het systeem dat je gebruikt. Het uitbreiden van het gebruik van je DAM-systeem kan een waardevol bezit voor je zijn. Er zijn eindeloze mogelijkheden, voor interne of externe doeleinden.
Heb je vragen of zit je vast bij het opzetten van je omgeving? Wil je je eigen DAM-systeem uitbreiden en meer potentieel bereiken met de gegevens die je al hebt? Neem contact met ons op en laten we kijken hoe we je doelen kunnen bereiken.
Klaar om je digitale ervaring naar een hoger niveau te tillen? Neem gerust contact met ons op voor meer informatie over onze diensten en hoe we jou kunnen helpen het volledige potentieel van je digitale marketing te benutten.
Neem contact op met één van onze consultants om de perfecte match te vinden die bij je past en waarmee je kunt groeien.