Links

Intégration technique

Cet article vous présente comment intégrer le widget d'exercice de droit dans une page web

Objectifs

Le widget d'exercice de droits vous permet de collecter automatiquement depuis une page de votre site des demandes d'exercice de droit de différents types (suppressions, modifications, rectifications...)
Le widget est intégré au SDK javascript de dastra.

Prérequis

Afin de mettre en place le widget d'exercice de droit, vous devez disposer d'une clé publique d'API : lire la documentation ou accéder directement à la page de gestion des clés d'API

Mise en place du widget dans l'interface dédiée

Pour commencer, vous devez mettre en place le widget dans le panel de gestion des widgets d'exercice de droits :
Voici un exemple simple d'intégration du widget (en mode popup avec un bouton d'ouverture) :
<div id="customer-subject-form-custom" ></div>
<button id="customer-request-button">Open the widget</button>
<script src="https://cdn.dastra.eu/sdk/dastra.js?key={YOUR PUBLIC KEY}" async></script>
<script>
window.dastra = window.dastra || [];
dastra.debug = true;
window.dastra.push(function(){
dastra.loadCustomerSubjectForm({
selector: '#customer-subject-form-custom',
widgetId: {your widget id},
onLoad: function (form) {
document.getElementById('customer-request-button').addEventListener('click',function () {
form.open()
})
}
})
})
</script>

Comment forcer la langue du formulaire ?

Par défaut, ce sera la langue du navigateur qui sera prise. Si la langue n'est pas disponible dans les traductions du widgets, la langue par défaut sera sélectionnée automatiquement. Vous pouvez forcer la langue courante du widget en ajoutant la propriété data-lang à la div où le formulaire s'affichera.
Dans cet exemple, la langue italienne sera sélectionnée par défaut (si elle est disponible)
<div id="customer-subject-popup" data-lang="it"></div>

Comment envoyer automatiquement des valeur de formulaire au widget ?

<script>
dastra.push(['set','dsr:refId','{your custom userId}'])
</script>
Vous pouvez remplacer le nom de la colonne refId par le nom de propriété suivante :
  • refId : the unique identifier of the user
  • familyName
  • givenName
  • email
  • city
  • zipCode
  • countryCode
  • address
  • phoneNumber
  • message
  • additionalDatas*
*For the specific case of custom fields, you must reference the additionalDatas name:
<script>
var payload = {
customFieldSlug1: 'test',
customFieldSlug2: 'test'
};
dastra.push(['set','dsr:additionalDatas', payload])
</script>
Les champs additionnels seront automatiquement fusionnés

Envoi des paramètres en utilisant le mode page

Il est également possible de passer ces paramètres en utilisant les paramètres querystring, il suffit de préfixer le nom du paramètre par dsr_ :
https://api.dastra.eu/v1/client/customer-subject-form?id=<Your widget id>
&key=<your public key>
&dsr_givenName=Dastonaute
&dsr_refId=123456
&...etc...