Sådan opsætter du en brugerdefineret widget

Written by Anders Eiler
Last updated 2026-03-19

En brugerdefineret widget giver dig mulighed for at vise data fra dine egne systemer i en widget i Herodesk. 

Eksempler er:

  • Brugerdefineret CRM / ERP system
  • Andre tredjepartsværktøjer, som vi ikke har en indbygget widget til

 

Installer brugerdefineret widget

For at installere en ny brugerdefineret widget, gå til Indstillinger -> Widgets -> Tilføj Widget og vælg Brugerdefineret Widget. 

Du vil se denne skærm:

Giv widget'en et internt visningsnavn (så du og dit team ved, hvilket værktøj I viser data fra) og indtast URL-adressen til dit script/endpoint, der returnerer dataene.

Bemærk: Alle forespørgsler sendes over HTTPS, men for at undgå uautoriseret adgang anbefaler vi at tilføje en hemmelig nøgle eller token til URL'en.

 

Brugerdefineret widget arbejdsgang

Brugerdefinerede widget arbejdsgange fungerer således:

  1. Når en samtale åbnes, sender Herodesk en POST-forespørgsel til den URL, du har angivet i widget-indstillingerne. Forespørgslen vil inkludere disse body-parametre:
    1. Samtale-id
    2. Widget-id
    3. Kontakt-e-mail
  2. Dit script behandler nu forespørgslen og henter de nødvendige data
  3. Dit script skal returnere dataene som JSON i det format, der er angivet nedenfor

Herodesk laver én forespørgsel pr. samtaleindlæsning. 

 

Accepteret JSON-format

For at få dine data vist i Herodesk, skal de præsenteres i dette format:

{
"headline":"Headline here","
elements":[
    {
        "header":"Headline text here",
        "type":"text",
        "content":"Text to be shown here"
    },
    {
        "header":"Headline text here",
        "type":"list",
        "content": [
            "bullet list 1",
            "bullet list 2",
            "bullet list 3",
            ...
        ]
    },
    {
        "header":"Headline text here",
        "type":"table",
        "content": {
            "tableHead":[
                "tableHead1",
                "tableHead2",
                "tableHead3",
                ...
            ],
            "tableBody":[
                [
                    "tableBody1",
                    "tableBody2",
                    "tableBody3",
                ],
                [ ... ]
            ]
        }
    }
]
}

Det skal have et overskrift (string) og elementer (array) objekter.

Der kan være så mange objekter i elementer, som du har brug for. De vises i den rækkefølge, de tilføjes til arrayet.

Hvert element skal have en type, der enten er tekst, liste eller tabel.

Indholdet understøtter følgende markup:

  • Konverter fed tekst: **fed tekst**
  • Konverter kursiv tekst: *kursiv tekst*
  • Konverter hyperlink knapper: [knaptekst](url){:attribute="value" } fx [Gå til Herodesk](https://herodesk.io){:target="_blank" :class="btn btn-primary"} Vi bruger Bootstrap 5.3, husk det vedrørende knapklasser
  • Konverter links: [linktekst](url)

 

Verificering af forespørgsler

For at verificere, at en forespørgsel kommer fra Herodesk, og for at forhindre, at data fra dine brugerdefinerede endpoints udsættes for uønskede tredjepart, anbefaler vi at tilføje en hemmelig nøgle til din URL og sikre, at forbindelsen altid sendes over https. 

Du kan se, hvordan du implementerer dette i eksemplet øverst i denne artikel.

 

Andre datatyper

Hvis du ønsker at tilføje andre datatyper, bedes du kontakte os på support@herodesk.io for forespørgsler.